annotate qt/d2/qt/core/QPoint.d @ 188:7dd099050621

initial commit for D2 support
author eldar
date Sun, 12 Jul 2009 18:58:03 +0000
parents
children 3dadfee97421
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
188
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
1 module qt.core.QPoint;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
2
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
3 public import qt.QGlobal;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
4 public import qt.core.Qt;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
5 public import qt.core.QDataStream;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
6
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
7
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
8 public struct QPoint
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
9 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
10
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
11 // Functions
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
12 public static QPoint opCall() {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
13 QPoint pt;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
14 pt.xp = pt.yp = 0;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
15 return pt;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
16 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
17
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
18 public this(int xpos, int ypos) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
19 xp = xpos;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
20 yp = ypos;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
21 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
22
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
23 bool isNull() // const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
24 { return xp == 0 && yp == 0; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
25
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
26 int x() // const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
27 { return xp; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
28
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
29 int y() // const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
30 { return yp; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
31
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
32 void x(int xpos)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
33 { xp = xpos; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
34
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
35 void y(int ypos)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
36 { yp = ypos; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
37
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
38 void setX(int xpos) // for convenience
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
39 { xp = xpos; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
40
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
41 void setY(int ypos) // for convenience
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
42 { yp = ypos; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
43
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
44 public final int manhattanLength() {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
45 return qtd_QPoint_manhattanLength(&this);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
46 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
47 /*
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
48 inline int &rx()
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
49 { return xp; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
50
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
51 inline int &ry()
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
52 { return yp; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
53 */
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
54
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
55 QPoint opAddAssign(ref QPoint p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
56 { xp+=p.xp; yp+=p.yp; return this; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
57
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
58 QPoint opSubAssign(ref QPoint p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
59 { xp-=p.xp; yp-=p.yp; return this; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
60
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
61 QPoint opMulAssign(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
62 { xp = qRound(xp*c); yp = qRound(yp*c); return this; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
63
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
64 bool opEquals(ref QPoint p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
65 { return xp == p.xp && yp == p.yp; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
66
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
67 QPoint opAdd(ref QPoint p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
68 { return QPoint(this.xp+p.xp, this.yp+p.yp); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
69
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
70 QPoint opSub(ref QPoint p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
71 { return QPoint(this.xp-p.xp, this.yp-p.yp); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
72
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
73 QPoint opMul(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
74 { return QPoint(qRound(this.xp*c), qRound(this.yp*c)); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
75
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
76 QPoint opDivAssign(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
77 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
78 xp = qRound(xp/c);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
79 yp = qRound(yp/c);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
80 return this;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
81 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
82
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
83 QPoint opDiv(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
84 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
85 return QPoint(qRound(this.xp/c), qRound(this.yp/c));
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
86 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
87
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
88 public final void writeTo(QDataStream arg__1) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
89 qtd_QPoint_writeTo_QDataStream(&this, arg__1 is null ? null : arg__1.nativeId);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
90 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
91
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
92 public final void readFrom(QDataStream arg__1) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
93 qtd_QPoint_readFrom_QDataStream(&this, arg__1 is null ? null : arg__1.nativeId);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
94 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
95
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
96 private:
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
97 // ### Qt 5; remove the ifdef and just have the same order on all platforms.
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
98 version(OSX)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
99 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
100 int yp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
101 int xp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
102 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
103 else
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
104 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
105 int xp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
106 int yp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
107 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
108 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
109
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
110
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
111 public struct QPointF
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
112 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
113 public static QPointF opCall() {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
114 QPointF pt;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
115 pt.xp = pt.yp = 0;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
116 return pt;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
117 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
118
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
119 public this(qreal xpos, qreal ypos) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
120 xp = xpos;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
121 yp = ypos;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
122 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
123
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
124 public this(QPoint p) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
125 xp = p.x();
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
126 yp = p.y();
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
127 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
128
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
129 bool isNull() //const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
130 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
131 return qIsNull(xp) && qIsNull(yp);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
132 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
133
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
134 qreal x() //const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
135 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
136 return xp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
137 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
138
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
139 qreal y() //const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
140 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
141 return yp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
142 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
143
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
144 void x(qreal xpos)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
145 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
146 xp = xpos;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
147 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
148
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
149 void y(qreal ypos)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
150 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
151 yp = ypos;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
152 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
153 /*
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
154 inline qreal &QPointF::rx()
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
155 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
156 return xp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
157 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
158
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
159 inline qreal &QPointF::ry()
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
160 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
161 return yp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
162 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
163 */
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
164
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
165 QPointF opAddAssign(ref QPointF p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
166 { xp+=p.xp; yp+=p.yp; return this; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
167
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
168 QPointF opSubAssign(ref QPointF p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
169 { xp-=p.xp; yp-=p.yp; return this; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
170
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
171 QPointF opMulAssign(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
172 { xp*=c; yp*=c; return this; }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
173
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
174 bool opEquals(ref QPointF p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
175 { return qFuzzyCompare(xp, p.xp) && qFuzzyCompare(yp, p.yp); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
176
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
177 QPointF opAdd(ref QPointF p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
178 { return QPointF(this.xp+p.xp, this.yp+p.yp); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
179
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
180 QPointF opSub(ref QPointF p)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
181 { return QPointF(this.xp-p.xp, this.yp-p.yp); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
182
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
183 QPointF opMul(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
184 { return QPointF(this.xp*c, this.yp*c); }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
185
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
186 QPointF opDivAssign(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
187 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
188 xp/=c;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
189 yp/=c;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
190 return this;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
191 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
192
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
193 QPointF opDiv(qreal c)
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
194 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
195 return QPointF(xp/c, yp/c);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
196 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
197
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
198 QPoint toPoint() //const
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
199 {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
200 return QPoint(qRound(xp), qRound(yp));
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
201 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
202
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
203 public final void writeTo(QDataStream arg__1) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
204 qtd_QPointF_writeTo_QDataStream(&this, arg__1 is null ? null : arg__1.nativeId);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
205 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
206
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
207 public final void readFrom(QDataStream arg__1) {
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
208 qtd_QPointF_readFrom_QDataStream(&this, arg__1 is null ? null : arg__1.nativeId);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
209 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
210
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
211 private:
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
212 qreal xp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
213 qreal yp;
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
214 }
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
215
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
216
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
217 // C wrappers
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
218 // QPoint
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
219 private extern(C) int qtd_QPoint_manhattanLength(void* __this_nativeId);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
220 private extern(C) void qtd_QPoint_writeTo_QDataStream(void* __this_nativeId,
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
221 void* arg__1);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
222 private extern(C) void qtd_QPoint_readFrom_QDataStream(void* __this_nativeId,
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
223 void* arg__1);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
224
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
225 // QPointF
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
226 private extern(C) void qtd_QPointF_writeTo_QDataStream(void* __this_nativeId,
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
227 void* arg__1);
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
228 private extern(C) void qtd_QPointF_readFrom_QDataStream(void* __this_nativeId,
7dd099050621 initial commit for D2 support
eldar
parents:
diff changeset
229 void* arg__1);