svn-gvsig-desktop / branches / v2_0_0_prep / extensions / extEditing / sm / ComplexSelectionCADTool.sm @ 26242
History | View | Annotate | Download (21.5 KB)
1 |
// -*- tab-width: 4; -*- |
---|---|
2 |
|
3 |
%{ |
4 |
// |
5 |
// Vicente Caballero Navarro |
6 |
%} |
7 |
|
8 |
%start Selection::FirstPoint |
9 |
%class ComplexSelectionCADTool |
10 |
%package com.iver.cit.gvsig.gui.cad.tools.smc |
11 |
%import com.iver.cit.gvsig.gui.cad.tools.ComplexSelectionCADTool |
12 |
%import java.awt.event.InputEvent |
13 |
%import com.iver.andami.PluginServices |
14 |
|
15 |
|
16 |
%map Selection |
17 |
%% |
18 |
// A task begins life in suspended animation. |
19 |
|
20 |
FirstPoint |
21 |
|
22 |
Entry { |
23 |
setQuestion( |
24 |
PluginServices.getText(this,"insert_point")+" "+ |
25 |
PluginServices.getText(this,"cad.or")+" "+ |
26 |
PluginServices.getText(this,"circle")+ |
27 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
28 |
PluginServices.getText(this,"out_rectangle")+ |
29 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
30 |
PluginServices.getText(this,"polygon")+ |
31 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
32 |
PluginServices.getText(this,"cross_polygon")+ |
33 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
34 |
"#"+PluginServices.getText(this,"out_polygon")+ |
35 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
36 |
PluginServices.getText(this,"cross_circle")+ |
37 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
38 |
PluginServices.getText(this,"out_circle")+ |
39 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
40 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
41 |
} |
42 |
Exit{ |
43 |
} |
44 |
|
45 |
{ |
46 |
addOption(s:String) |
47 |
FirstPoint{ |
48 |
setQuestion( |
49 |
PluginServices.getText(this,"insert_point")+" "+ |
50 |
PluginServices.getText(this,"cad.or")+" "+ |
51 |
PluginServices.getText(this,"circle")+ |
52 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
53 |
PluginServices.getText(this,"out_rectangle")+ |
54 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"], "+ |
55 |
PluginServices.getText(this,"polygon")+ |
56 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
57 |
PluginServices.getText(this,"cross_polygon")+ |
58 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
59 |
"#"+PluginServices.getText(this,"out_polygon")+ |
60 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
61 |
PluginServices.getText(this,"cross_circle")+ |
62 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
63 |
PluginServices.getText(this,"out_circle")+ |
64 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
65 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
66 |
addOption(s); |
67 |
} |
68 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
69 |
[ctxt.getType().equals(PluginServices.getText(this,"out_rectangle"))] |
70 |
SecondPointOutRectangle{ |
71 |
setQuestion(PluginServices.getText(this,"insert_second_point_selection")); |
72 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
73 |
addPoint( pointX,pointY,event); |
74 |
} |
75 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
76 |
[ctxt.getType().equals(PluginServices.getText(this,"inside_circle")) || ctxt.getType().equals(PluginServices.getText(this,"cross_circle")) || ctxt.getType().equals(PluginServices.getText(this,"out_circle"))] |
77 |
SecondPointCircle{ |
78 |
setQuestion(PluginServices.getText(this,"insert_second_point_selection")); |
79 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
80 |
addPoint( pointX,pointY,event); |
81 |
} |
82 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
83 |
[ctxt.getType().equals(PluginServices.getText(this,"inside_polygon")) || ctxt.getType().equals(PluginServices.getText(this,"cross_polygon")) || ctxt.getType().equals(PluginServices.getText(this,"out_polygon"))] |
84 |
NextPointPolygon{ |
85 |
setQuestion( |
86 |
PluginServices.getText(this,"insert_next_point_selection_or_end_polygon")+ |
87 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.end")+"]"); |
88 |
setDescription(new String[]{"end_polygon","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
89 |
addPoint( pointX,pointY,event); |
90 |
} |
91 |
|
92 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
93 |
[ctxt.getType().equals(PluginServices.getText(this,"simple")) && ctxt.selectFeatures(pointX,pointY, event) && ctxt.getNextState().equals("Selection.SecondPoint")] |
94 |
SecondPoint{ |
95 |
setQuestion(PluginServices.getText(this,"insert_second_point_selection")); |
96 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
97 |
addPoint( pointX,pointY,event); |
98 |
} |
99 |
// addPoint( pointX:double,pointY:double,event:InputEvent) |
100 |
// [ctxt.getType().equals(PluginServices.getText(this,"simple")) && ctxt.getNextState().equals("Selection.WithSelectedFeatures")] |
101 |
// WithSelectedFeatures { |
102 |
// setQuestion(PluginServices.getText(this,"select_handlers")); |
103 |
// setDescription(new String[]{"simple","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
104 |
// addPoint( pointX,pointY,event); |
105 |
// end(); |
106 |
// } |
107 |
} |
108 |
|
109 |
SecondPoint{ |
110 |
// Si hemos conseguido seleccionar algo |
111 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
112 |
[ctxt.selectWithSecondPoint(pointX,pointY, event) > 0] |
113 |
WithSelectedFeatures { |
114 |
setQuestion(PluginServices.getText(this,"select_handlers")); |
115 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
116 |
addPoint( pointX,pointY,event); |
117 |
end(); |
118 |
} |
119 |
// Si no lo hemos conseguido |
120 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
121 |
FirstPoint { |
122 |
setQuestion( |
123 |
PluginServices.getText(this,"insert_point")+" "+ |
124 |
PluginServices.getText(this,"cad.or")+" "+ |
125 |
PluginServices.getText(this,"circle")+ |
126 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
127 |
PluginServices.getText(this,"out_rectangle")+ |
128 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
129 |
PluginServices.getText(this,"polygon")+ |
130 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
131 |
PluginServices.getText(this,"cross_polygon")+ |
132 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
133 |
"#"+PluginServices.getText(this,"out_polygon")+ |
134 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
135 |
PluginServices.getText(this,"cross_circle")+ |
136 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
137 |
PluginServices.getText(this,"out_circle")+ |
138 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
139 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
140 |
addPoint(pointX,pointY,event); |
141 |
} |
142 |
addOption(s:String) |
143 |
FirstPoint{ |
144 |
setQuestion( |
145 |
PluginServices.getText(this,"insert_point")+" "+ |
146 |
PluginServices.getText(this,"cad.or")+" "+ |
147 |
PluginServices.getText(this,"circle")+ |
148 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
149 |
PluginServices.getText(this,"out_rectangle")+ |
150 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
151 |
PluginServices.getText(this,"polygon")+ |
152 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
153 |
PluginServices.getText(this,"cross_polygon")+ |
154 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
155 |
"#"+PluginServices.getText(this,"out_polygon")+ |
156 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
157 |
PluginServices.getText(this,"cross_circle")+ |
158 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
159 |
PluginServices.getText(this,"out_circle")+ |
160 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
161 |
setDescription(new String[]{"end_polygon","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
162 |
setType(s); |
163 |
} |
164 |
|
165 |
} |
166 |
WithSelectedFeatures{ |
167 |
|
168 |
// Si hemos pinchado encima de un handler |
169 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
170 |
[ctxt.selectHandlers(pointX, pointY, event)>0] |
171 |
WithHandlers { |
172 |
setQuestion(PluginServices.getText(this,"insert_destination_point")); |
173 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
174 |
addPoint( pointX,pointY,event); |
175 |
// refresh(); |
176 |
} |
177 |
|
178 |
// Si no hemos cogido un handler, probamos a seleccionar |
179 |
// otra entidad |
180 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
181 |
[ctxt.selectFeatures(pointX,pointY, event) && ctxt.getNextState().equals("Selection.WithSelectedFeatures")] |
182 |
WithSelectedFeatures { |
183 |
setQuestion(PluginServices.getText(this,"select_handlers")); |
184 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
185 |
addPoint( pointX,pointY,event); |
186 |
} |
187 |
|
188 |
|
189 |
// Cualquier otro caso (hemos pinchado en algo vacio), volvemos al estado inicial |
190 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
191 |
FirstPoint { |
192 |
setQuestion( |
193 |
PluginServices.getText(this,"insert_point")+" "+ |
194 |
PluginServices.getText(this,"cad.or")+" "+ |
195 |
PluginServices.getText(this,"circle")+ |
196 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
197 |
PluginServices.getText(this,"out_rectangle")+ |
198 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
199 |
PluginServices.getText(this,"polygon")+ |
200 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
201 |
PluginServices.getText(this,"cross_polygon")+ |
202 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
203 |
"#"+PluginServices.getText(this,"out_polygon")+ |
204 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
205 |
PluginServices.getText(this,"cross_circle")+ |
206 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
207 |
PluginServices.getText(this,"out_circle")+ |
208 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
209 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
210 |
addPoint( pointX,pointY,event); |
211 |
// refresh(); |
212 |
} |
213 |
addOption(s:String) |
214 |
FirstPoint{ |
215 |
setQuestion( |
216 |
PluginServices.getText(this,"insert_point")+" "+ |
217 |
PluginServices.getText(this,"cad.or")+" "+ |
218 |
PluginServices.getText(this,"circle")+ |
219 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
220 |
PluginServices.getText(this,"out_rectangle")+ |
221 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
222 |
PluginServices.getText(this,"polygon")+ |
223 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
224 |
PluginServices.getText(this,"cross_polygon")+ |
225 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
226 |
"#"+PluginServices.getText(this,"out_polygon")+ |
227 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
228 |
PluginServices.getText(this,"cross_circle")+ |
229 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
230 |
PluginServices.getText(this,"out_circle")+ |
231 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
232 |
setDescription(new String[]{"end_polygon","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
233 |
setType(s); |
234 |
} |
235 |
} |
236 |
|
237 |
WithHandlers{ |
238 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
239 |
WithSelectedFeatures { |
240 |
setQuestion(PluginServices.getText(this,"select_handlers")); |
241 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
242 |
addPoint( pointX,pointY,event); |
243 |
refresh(); |
244 |
} |
245 |
} |
246 |
|
247 |
SecondPointOutRectangle{ |
248 |
// Si hemos conseguido seleccionar algo |
249 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
250 |
[ctxt.selectWithSecondPointOutRectangle(pointX,pointY, event) > 0] |
251 |
WithSelectedFeatures { |
252 |
setQuestion(PluginServices.getText(this,"select_handlers")); |
253 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
254 |
addPoint( pointX,pointY,event); |
255 |
end(); |
256 |
} |
257 |
// Si no lo hemos conseguido |
258 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
259 |
FirstPoint { |
260 |
setQuestion( |
261 |
PluginServices.getText(this,"insert_point")+" "+ |
262 |
PluginServices.getText(this,"cad.or")+" "+ |
263 |
PluginServices.getText(this,"circle")+ |
264 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
265 |
PluginServices.getText(this,"out_rectangle")+ |
266 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
267 |
PluginServices.getText(this,"polygon")+ |
268 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
269 |
PluginServices.getText(this,"cross_polygon")+ |
270 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
271 |
"#"+PluginServices.getText(this,"out_polygon")+ |
272 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
273 |
PluginServices.getText(this,"cross_circle")+ |
274 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
275 |
PluginServices.getText(this,"out_circle")+ |
276 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
277 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
278 |
addPoint(pointX,pointY,event); |
279 |
} |
280 |
addOption(s:String) |
281 |
FirstPoint{ |
282 |
setQuestion( |
283 |
PluginServices.getText(this,"insert_point")+" "+ |
284 |
PluginServices.getText(this,"cad.or")+" "+ |
285 |
PluginServices.getText(this,"circle")+ |
286 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
287 |
PluginServices.getText(this,"out_rectangle")+ |
288 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
289 |
PluginServices.getText(this,"polygon")+ |
290 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
291 |
PluginServices.getText(this,"cross_polygon")+ |
292 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
293 |
"#"+PluginServices.getText(this,"out_polygon")+ |
294 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
295 |
PluginServices.getText(this,"cross_circle")+ |
296 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
297 |
PluginServices.getText(this,"out_circle")+ |
298 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
299 |
setDescription(new String[]{"end_polygon","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
300 |
setType(s); |
301 |
} |
302 |
|
303 |
} |
304 |
SecondPointCircle{ |
305 |
// Si hemos conseguido seleccionar algo |
306 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
307 |
[ctxt.selectWithCircle(pointX,pointY, event) > 0] |
308 |
WithSelectedFeatures { |
309 |
setQuestion(PluginServices.getText(this,"select_handlers")); |
310 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
311 |
addPoint( pointX,pointY,event); |
312 |
end(); |
313 |
} |
314 |
// Si no lo hemos conseguido |
315 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
316 |
FirstPoint { |
317 |
setQuestion( |
318 |
PluginServices.getText(this,"insert_point")+" "+ |
319 |
PluginServices.getText(this,"cad.or")+" "+ |
320 |
PluginServices.getText(this,"circle")+ |
321 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
322 |
PluginServices.getText(this,"out_rectangle")+ |
323 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
324 |
PluginServices.getText(this,"polygon")+ |
325 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
326 |
PluginServices.getText(this,"cross_polygon")+ |
327 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
328 |
"#"+PluginServices.getText(this,"out_polygon")+ |
329 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
330 |
PluginServices.getText(this,"cross_circle")+ |
331 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
332 |
PluginServices.getText(this,"out_circle")+ |
333 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
334 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
335 |
addPoint(pointX,pointY,event); |
336 |
} |
337 |
addOption(s:String) |
338 |
FirstPoint{ |
339 |
setQuestion( |
340 |
PluginServices.getText(this,"insert_point")+" "+ |
341 |
PluginServices.getText(this,"cad.or")+" "+ |
342 |
PluginServices.getText(this,"circle")+ |
343 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
344 |
PluginServices.getText(this,"out_rectangle")+ |
345 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
346 |
PluginServices.getText(this,"polygon")+ |
347 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
348 |
PluginServices.getText(this,"cross_polygon")+ |
349 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
350 |
"#"+PluginServices.getText(this,"out_polygon")+ |
351 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
352 |
PluginServices.getText(this,"cross_circle")+ |
353 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
354 |
PluginServices.getText(this,"out_circle")+ |
355 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
356 |
setDescription(new String[]{"out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
357 |
setType(s); |
358 |
} |
359 |
} |
360 |
|
361 |
NextPointPolygon{ |
362 |
addPoint( pointX:double,pointY:double,event:InputEvent) |
363 |
NextPointPolygon { |
364 |
setQuestion(PluginServices.getText(this,"insert_next_point_selection_or_end_polygon")+ |
365 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.end")+"]"); |
366 |
setDescription(new String[]{"end_polygon","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
367 |
addPoint(pointX,pointY,event); |
368 |
} |
369 |
addOption(s:String) |
370 |
FirstPoint{ |
371 |
setQuestion( |
372 |
PluginServices.getText(this,"insert_point")+" "+ |
373 |
PluginServices.getText(this,"cad.or")+" "+ |
374 |
PluginServices.getText(this,"circle")+ |
375 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.introcircle")+"], "+ |
376 |
PluginServices.getText(this,"out_rectangle")+ |
377 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outrectangle")+"], "+ |
378 |
PluginServices.getText(this,"polygon")+ |
379 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.intropolygon")+"], "+ |
380 |
PluginServices.getText(this,"cross_polygon")+ |
381 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosspolygon")+"], "+"\n"+ |
382 |
"#"+PluginServices.getText(this,"out_polygon")+ |
383 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outpolygon")+"], "+ |
384 |
PluginServices.getText(this,"cross_circle")+ |
385 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.crosscircle")+"], "+ |
386 |
PluginServices.getText(this,"out_circle")+ |
387 |
"["+PluginServices.getText(this,"ComplexSelectionCADTool.outcircle")+"]"); |
388 |
setDescription(new String[]{"end_polygon","out_rectangle","inside_polygon","cross_polygon","out_polygon","inside_circle","cross_circle","out_circle","select_all","cancel"}); |
389 |
addOption(s); |
390 |
} |
391 |
} |
392 |
|
393 |
Default |
394 |
{ |
395 |
addOption(s:String) |
396 |
[s.equals(PluginServices.getText(this,"cancel"))] |
397 |
FirstPoint{ |
398 |
end(); |
399 |
} |
400 |
addOption(s:String) |
401 |
FirstPoint{ |
402 |
throwOptionException(PluginServices.getText(this,"incorrect_option"),s); |
403 |
} |
404 |
addValue(d:double) |
405 |
FirstPoint{ |
406 |
throwValueException(PluginServices.getText(this,"incorrect_value"),d); |
407 |
} |
408 |
addPoint(pointX:double,pointY:double,event:InputEvent) |
409 |
FirstPoint{ |
410 |
throwPointException(PluginServices.getText(this,"incorrect_point"),pointX,pointY); |
411 |
} |
412 |
} |
413 |
%% |