Revision 1575

View differences:

org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DynamicEditingPointPanelView.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2

  
3
<object classname="com.jeta.forms.store.memento.FormPackage">
4
 <at name="fileversion">
5
  <object classname="com.jeta.forms.store.memento.FormsVersion2">
6
   <at name="major">2</at>
7
   <at name="minor">0</at>
8
   <at name="sub">0</at>
9
  </object>
10
 </at>
11
 <at name="form">
12
  <object classname="com.jeta.forms.store.memento.FormMemento">
13
   <super classname="com.jeta.forms.store.memento.ComponentMemento">
14
    <at name="cellconstraints">
15
     <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
16
      <at name="column">1</at>
17
      <at name="row">1</at>
18
      <at name="colspan">1</at>
19
      <at name="rowspan">1</at>
20
      <at name="halign">default</at>
21
      <at name="valign">default</at>
22
      <at name="insets" object="insets">0,0,0,0</at>
23
     </object>
24
    </at>
25
    <at name="componentclass">com.jeta.forms.gui.form.FormComponent</at>
26
   </super>
27
   <at name="id">/home/jjdelcerro/datos/devel/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DynamicEditingPointPanelView.xml</at>
28
   <at name="path">datos/devel/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DynamicEditingPointPanelView.xml</at>
29
   <at name="rowspecs">CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:4DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE</at>
30
   <at name="colspecs">FILL:4DLU:NONE,FILL:8DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE</at>
31
   <at name="components">
32
    <object classname="java.util.LinkedList">
33
     <item >
34
      <at name="value">
35
       <object classname="com.jeta.forms.store.memento.BeanMemento">
36
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
37
         <at name="cellconstraints">
38
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
39
           <at name="column">2</at>
40
           <at name="row">2</at>
41
           <at name="colspan">4</at>
42
           <at name="rowspan">1</at>
43
           <at name="halign">default</at>
44
           <at name="valign">default</at>
45
           <at name="insets" object="insets">0,0,0,0</at>
46
          </object>
47
         </at>
48
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
49
        </super>
50
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
51
        <at name="beanclass">javax.swing.JRadioButton</at>
52
        <at name="beanproperties">
53
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
54
          <at name="classname">javax.swing.JRadioButton</at>
55
          <at name="properties">
56
           <object classname="com.jeta.forms.store.support.PropertyMap">
57
            <at name="border">
58
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
59
              <super classname="com.jeta.forms.store.properties.BorderProperty">
60
               <at name="name">border</at>
61
              </super>
62
              <at name="borders">
63
               <object classname="java.util.LinkedList">
64
                <item >
65
                 <at name="value">
66
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
67
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
68
                    <at name="name">border</at>
69
                   </super>
70
                  </object>
71
                 </at>
72
                </item>
73
               </object>
74
              </at>
75
             </object>
76
            </at>
77
            <at name="actionCommand">_Use_a_point_previously_captured</at>
78
            <at name="buttonGroup">
79
             <object classname="com.jeta.forms.store.properties.ButtonGroupProperty">
80
              <at name="name">buttonGroup</at>
81
              <at name="groupname">1</at>
82
             </object>
83
            </at>
84
            <at name="name">rdbUseAPointPreviouslyCaptured</at>
85
            <at name="width">713</at>
86
            <at name="text">_Use_a_point_previously_captured</at>
87
            <at name="height">16</at>
88
           </object>
89
          </at>
90
         </object>
91
        </at>
92
       </object>
93
      </at>
94
     </item>
95
     <item >
96
      <at name="value">
97
       <object classname="com.jeta.forms.store.memento.BeanMemento">
98
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
99
         <at name="cellconstraints">
100
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
101
           <at name="column">3</at>
102
           <at name="row">4</at>
103
           <at name="colspan">3</at>
104
           <at name="rowspan">1</at>
105
           <at name="halign">default</at>
106
           <at name="valign">default</at>
107
           <at name="insets" object="insets">0,0,0,0</at>
108
          </object>
109
         </at>
110
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
111
        </super>
112
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
113
        <at name="beanclass">javax.swing.JComboBox</at>
114
        <at name="beanproperties">
115
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
116
          <at name="classname">javax.swing.JComboBox</at>
117
          <at name="properties">
118
           <object classname="com.jeta.forms.store.support.PropertyMap">
119
            <at name="border">
120
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
121
              <super classname="com.jeta.forms.store.properties.BorderProperty">
122
               <at name="name">border</at>
123
              </super>
124
              <at name="borders">
125
               <object classname="java.util.LinkedList">
126
                <item >
127
                 <at name="value">
128
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
129
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
130
                    <at name="name">border</at>
131
                   </super>
132
                  </object>
133
                 </at>
134
                </item>
135
               </object>
136
              </at>
137
             </object>
138
            </at>
139
            <at name="name">cboCapturedPoints</at>
140
            <at name="width">699</at>
141
            <at name="items">
142
             <object classname="com.jeta.forms.store.properties.ItemsProperty">
143
              <at name="name">items</at>
144
             </object>
145
            </at>
146
            <at name="height">20</at>
147
           </object>
148
          </at>
149
         </object>
150
        </at>
151
       </object>
152
      </at>
153
     </item>
154
     <item >
155
      <at name="value">
156
       <object classname="com.jeta.forms.store.memento.BeanMemento">
157
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
158
         <at name="cellconstraints">
159
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
160
           <at name="column">2</at>
161
           <at name="row">6</at>
162
           <at name="colspan">4</at>
163
           <at name="rowspan">1</at>
164
           <at name="halign">default</at>
165
           <at name="valign">default</at>
166
           <at name="insets" object="insets">0,0,0,0</at>
167
          </object>
168
         </at>
169
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
170
        </super>
171
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
172
        <at name="beanclass">javax.swing.JRadioButton</at>
173
        <at name="beanproperties">
174
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
175
          <at name="classname">javax.swing.JRadioButton</at>
176
          <at name="properties">
177
           <object classname="com.jeta.forms.store.support.PropertyMap">
178
            <at name="border">
179
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
180
              <super classname="com.jeta.forms.store.properties.BorderProperty">
181
               <at name="name">border</at>
182
              </super>
183
              <at name="borders">
184
               <object classname="java.util.LinkedList">
185
                <item >
186
                 <at name="value">
187
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
188
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
189
                    <at name="name">border</at>
190
                   </super>
191
                  </object>
192
                 </at>
193
                </item>
194
               </object>
195
              </at>
196
             </object>
197
            </at>
198
            <at name="actionCommand">_Enter_the_coordinates_manually</at>
199
            <at name="buttonGroup">
200
             <object classname="com.jeta.forms.store.properties.ButtonGroupProperty">
201
              <at name="name">buttonGroup</at>
202
              <at name="groupname">1</at>
203
             </object>
204
            </at>
205
            <at name="name">rdbEnterTheCoordinatesManually</at>
206
            <at name="width">713</at>
207
            <at name="text">_Enter_the_coordinates_manually</at>
208
            <at name="height">16</at>
209
           </object>
210
          </at>
211
         </object>
212
        </at>
213
       </object>
214
      </at>
215
     </item>
216
     <item >
217
      <at name="value">
218
       <object classname="com.jeta.forms.store.memento.BeanMemento">
219
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
220
         <at name="cellconstraints">
221
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
222
           <at name="column">3</at>
223
           <at name="row">8</at>
224
           <at name="colspan">1</at>
225
           <at name="rowspan">1</at>
226
           <at name="halign">default</at>
227
           <at name="valign">default</at>
228
           <at name="insets" object="insets">0,0,0,0</at>
229
          </object>
230
         </at>
231
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
232
        </super>
233
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
234
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
235
        <at name="beanproperties">
236
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
237
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
238
          <at name="properties">
239
           <object classname="com.jeta.forms.store.support.PropertyMap">
240
            <at name="border">
241
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
242
              <super classname="com.jeta.forms.store.properties.BorderProperty">
243
               <at name="name">border</at>
244
              </super>
245
              <at name="borders">
246
               <object classname="java.util.LinkedList">
247
                <item >
248
                 <at name="value">
249
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
250
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
251
                    <at name="name">border</at>
252
                   </super>
253
                  </object>
254
                 </at>
255
                </item>
256
               </object>
257
              </at>
258
             </object>
259
            </at>
260
            <at name="name">lblX</at>
261
            <at name="width">12</at>
262
            <at name="text">X</at>
263
            <at name="fill">
264
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
265
              <at name="name">fill</at>
266
             </object>
267
            </at>
268
            <at name="height">14</at>
269
           </object>
270
          </at>
271
         </object>
272
        </at>
273
       </object>
274
      </at>
275
     </item>
276
     <item >
277
      <at name="value">
278
       <object classname="com.jeta.forms.store.memento.BeanMemento">
279
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
280
         <at name="cellconstraints">
281
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
282
           <at name="column">3</at>
283
           <at name="row">10</at>
284
           <at name="colspan">1</at>
285
           <at name="rowspan">1</at>
286
           <at name="halign">default</at>
287
           <at name="valign">default</at>
288
           <at name="insets" object="insets">0,0,0,0</at>
289
          </object>
290
         </at>
291
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
292
        </super>
293
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
294
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
295
        <at name="beanproperties">
296
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
297
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
298
          <at name="properties">
299
           <object classname="com.jeta.forms.store.support.PropertyMap">
300
            <at name="border">
301
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
302
              <super classname="com.jeta.forms.store.properties.BorderProperty">
303
               <at name="name">border</at>
304
              </super>
305
              <at name="borders">
306
               <object classname="java.util.LinkedList">
307
                <item >
308
                 <at name="value">
309
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
310
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
311
                    <at name="name">border</at>
312
                   </super>
313
                  </object>
314
                 </at>
315
                </item>
316
               </object>
317
              </at>
318
             </object>
319
            </at>
320
            <at name="name">lblY</at>
321
            <at name="width">12</at>
322
            <at name="text">Y</at>
323
            <at name="fill">
324
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
325
              <at name="name">fill</at>
326
             </object>
327
            </at>
328
            <at name="height">14</at>
329
           </object>
330
          </at>
331
         </object>
332
        </at>
333
       </object>
334
      </at>
335
     </item>
336
     <item >
337
      <at name="value">
338
       <object classname="com.jeta.forms.store.memento.BeanMemento">
339
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
340
         <at name="cellconstraints">
341
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
342
           <at name="column">5</at>
343
           <at name="row">8</at>
344
           <at name="colspan">1</at>
345
           <at name="rowspan">1</at>
346
           <at name="halign">default</at>
347
           <at name="valign">default</at>
348
           <at name="insets" object="insets">0,0,0,0</at>
349
          </object>
350
         </at>
351
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
352
        </super>
353
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
354
        <at name="beanclass">javax.swing.JTextField</at>
355
        <at name="beanproperties">
356
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
357
          <at name="classname">javax.swing.JTextField</at>
358
          <at name="properties">
359
           <object classname="com.jeta.forms.store.support.PropertyMap">
360
            <at name="border">
361
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
362
              <super classname="com.jeta.forms.store.properties.BorderProperty">
363
               <at name="name">border</at>
364
              </super>
365
              <at name="borders">
366
               <object classname="java.util.LinkedList">
367
                <item >
368
                 <at name="value">
369
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
370
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
371
                    <at name="name">border</at>
372
                   </super>
373
                  </object>
374
                 </at>
375
                </item>
376
               </object>
377
              </at>
378
             </object>
379
            </at>
380
            <at name="name">txtX</at>
381
            <at name="width">676</at>
382
            <at name="height">20</at>
383
           </object>
384
          </at>
385
         </object>
386
        </at>
387
       </object>
388
      </at>
389
     </item>
390
     <item >
391
      <at name="value">
392
       <object classname="com.jeta.forms.store.memento.BeanMemento">
393
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
394
         <at name="cellconstraints">
395
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
396
           <at name="column">5</at>
397
           <at name="row">10</at>
398
           <at name="colspan">1</at>
399
           <at name="rowspan">1</at>
400
           <at name="halign">default</at>
401
           <at name="valign">default</at>
402
           <at name="insets" object="insets">0,0,0,0</at>
403
          </object>
404
         </at>
405
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
406
        </super>
407
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
408
        <at name="beanclass">javax.swing.JTextField</at>
409
        <at name="beanproperties">
410
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
411
          <at name="classname">javax.swing.JTextField</at>
412
          <at name="properties">
413
           <object classname="com.jeta.forms.store.support.PropertyMap">
414
            <at name="border">
415
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
416
              <super classname="com.jeta.forms.store.properties.BorderProperty">
417
               <at name="name">border</at>
418
              </super>
419
              <at name="borders">
420
               <object classname="java.util.LinkedList">
421
                <item >
422
                 <at name="value">
423
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
424
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
425
                    <at name="name">border</at>
426
                   </super>
427
                  </object>
428
                 </at>
429
                </item>
430
               </object>
431
              </at>
432
             </object>
433
            </at>
434
            <at name="name">txtY</at>
435
            <at name="width">676</at>
436
            <at name="height">20</at>
437
           </object>
438
          </at>
439
         </object>
440
        </at>
441
       </object>
442
      </at>
443
     </item>
444
     <item >
445
      <at name="value">
446
       <object classname="com.jeta.forms.store.memento.BeanMemento">
447
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
448
         <at name="cellconstraints">
449
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
450
           <at name="column">3</at>
451
           <at name="row">12</at>
452
           <at name="colspan">1</at>
453
           <at name="rowspan">1</at>
454
           <at name="halign">default</at>
455
           <at name="valign">default</at>
456
           <at name="insets" object="insets">0,0,0,0</at>
457
          </object>
458
         </at>
459
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
460
        </super>
461
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
462
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
463
        <at name="beanproperties">
464
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
465
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
466
          <at name="properties">
467
           <object classname="com.jeta.forms.store.support.PropertyMap">
468
            <at name="border">
469
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
470
              <super classname="com.jeta.forms.store.properties.BorderProperty">
471
               <at name="name">border</at>
472
              </super>
473
              <at name="borders">
474
               <object classname="java.util.LinkedList">
475
                <item >
476
                 <at name="value">
477
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
478
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
479
                    <at name="name">border</at>
480
                   </super>
481
                  </object>
482
                 </at>
483
                </item>
484
               </object>
485
              </at>
486
             </object>
487
            </at>
488
            <at name="name">lblZ</at>
489
            <at name="width">12</at>
490
            <at name="text">Z</at>
491
            <at name="fill">
492
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
493
              <at name="name">fill</at>
494
             </object>
495
            </at>
496
            <at name="height">14</at>
497
           </object>
498
          </at>
499
         </object>
500
        </at>
501
       </object>
502
      </at>
503
     </item>
504
     <item >
505
      <at name="value">
506
       <object classname="com.jeta.forms.store.memento.BeanMemento">
507
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
508
         <at name="cellconstraints">
509
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
510
           <at name="column">3</at>
511
           <at name="row">14</at>
512
           <at name="colspan">1</at>
513
           <at name="rowspan">1</at>
514
           <at name="halign">default</at>
515
           <at name="valign">default</at>
516
           <at name="insets" object="insets">0,0,0,0</at>
517
          </object>
518
         </at>
519
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
520
        </super>
521
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
522
        <at name="beanclass">com.jeta.forms.components.label.JETALabel</at>
523
        <at name="beanproperties">
524
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
525
          <at name="classname">com.jeta.forms.components.label.JETALabel</at>
526
          <at name="properties">
527
           <object classname="com.jeta.forms.store.support.PropertyMap">
528
            <at name="border">
529
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
530
              <super classname="com.jeta.forms.store.properties.BorderProperty">
531
               <at name="name">border</at>
532
              </super>
533
              <at name="borders">
534
               <object classname="java.util.LinkedList">
535
                <item >
536
                 <at name="value">
537
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
538
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
539
                    <at name="name">border</at>
540
                   </super>
541
                  </object>
542
                 </at>
543
                </item>
544
               </object>
545
              </at>
546
             </object>
547
            </at>
548
            <at name="name">lblM</at>
549
            <at name="width">12</at>
550
            <at name="text">M</at>
551
            <at name="fill">
552
             <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
553
              <at name="name">fill</at>
554
             </object>
555
            </at>
556
            <at name="height">14</at>
557
           </object>
558
          </at>
559
         </object>
560
        </at>
561
       </object>
562
      </at>
563
     </item>
564
     <item >
565
      <at name="value">
566
       <object classname="com.jeta.forms.store.memento.BeanMemento">
567
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
568
         <at name="cellconstraints">
569
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
570
           <at name="column">5</at>
571
           <at name="row">12</at>
572
           <at name="colspan">1</at>
573
           <at name="rowspan">1</at>
574
           <at name="halign">default</at>
575
           <at name="valign">default</at>
576
           <at name="insets" object="insets">0,0,0,0</at>
577
          </object>
578
         </at>
579
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
580
        </super>
581
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
582
        <at name="beanclass">javax.swing.JTextField</at>
583
        <at name="beanproperties">
584
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
585
          <at name="classname">javax.swing.JTextField</at>
586
          <at name="properties">
587
           <object classname="com.jeta.forms.store.support.PropertyMap">
588
            <at name="border">
589
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
590
              <super classname="com.jeta.forms.store.properties.BorderProperty">
591
               <at name="name">border</at>
592
              </super>
593
              <at name="borders">
594
               <object classname="java.util.LinkedList">
595
                <item >
596
                 <at name="value">
597
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
598
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
599
                    <at name="name">border</at>
600
                   </super>
601
                  </object>
602
                 </at>
603
                </item>
604
               </object>
605
              </at>
606
             </object>
607
            </at>
608
            <at name="name">txtZ</at>
609
            <at name="width">676</at>
610
            <at name="height">20</at>
611
           </object>
612
          </at>
613
         </object>
614
        </at>
615
       </object>
616
      </at>
617
     </item>
618
     <item >
619
      <at name="value">
620
       <object classname="com.jeta.forms.store.memento.BeanMemento">
621
        <super classname="com.jeta.forms.store.memento.ComponentMemento">
622
         <at name="cellconstraints">
623
          <object classname="com.jeta.forms.store.memento.CellConstraintsMemento">
624
           <at name="column">5</at>
625
           <at name="row">14</at>
626
           <at name="colspan">1</at>
627
           <at name="rowspan">1</at>
628
           <at name="halign">default</at>
629
           <at name="valign">default</at>
630
           <at name="insets" object="insets">0,0,0,0</at>
631
          </object>
632
         </at>
633
         <at name="componentclass">com.jeta.forms.gui.form.StandardComponent</at>
634
        </super>
635
        <at name="jetabeanclass">com.jeta.forms.gui.beans.JETABean</at>
636
        <at name="beanclass">javax.swing.JTextField</at>
637
        <at name="beanproperties">
638
         <object classname="com.jeta.forms.store.memento.PropertiesMemento">
639
          <at name="classname">javax.swing.JTextField</at>
640
          <at name="properties">
641
           <object classname="com.jeta.forms.store.support.PropertyMap">
642
            <at name="border">
643
             <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
644
              <super classname="com.jeta.forms.store.properties.BorderProperty">
645
               <at name="name">border</at>
646
              </super>
647
              <at name="borders">
648
               <object classname="java.util.LinkedList">
649
                <item >
650
                 <at name="value">
651
                  <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
652
                   <super classname="com.jeta.forms.store.properties.BorderProperty">
653
                    <at name="name">border</at>
654
                   </super>
655
                  </object>
656
                 </at>
657
                </item>
658
               </object>
659
              </at>
660
             </object>
661
            </at>
662
            <at name="name">txtM</at>
663
            <at name="width">676</at>
664
            <at name="height">20</at>
665
           </object>
666
          </at>
667
         </object>
668
        </at>
669
       </object>
670
      </at>
671
     </item>
672
    </object>
673
   </at>
674
   <at name="properties">
675
    <object classname="com.jeta.forms.store.memento.PropertiesMemento">
676
     <at name="classname">com.jeta.forms.gui.form.GridView</at>
677
     <at name="properties">
678
      <object classname="com.jeta.forms.store.support.PropertyMap">
679
       <at name="border">
680
        <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
681
         <super classname="com.jeta.forms.store.properties.BorderProperty">
682
          <at name="name">border</at>
683
         </super>
684
         <at name="borders">
685
          <object classname="java.util.LinkedList"/>
686
         </at>
687
        </object>
688
       </at>
689
       <at name="name"></at>
690
       <at name="fill">
691
        <object classname="com.jeta.forms.store.properties.effects.PaintProperty">
692
         <at name="name">fill</at>
693
        </object>
694
       </at>
695
       <at name="scollBars">
696
        <object classname="com.jeta.forms.store.properties.ScrollBarsProperty">
697
         <at name="name">scollBars</at>
698
         <at name="verticalpolicy">21</at>
699
         <at name="horizontalpolicy">31</at>
700
         <at name="border">
701
          <object classname="com.jeta.forms.store.properties.CompoundBorderProperty">
702
           <super classname="com.jeta.forms.store.properties.BorderProperty">
703
            <at name="name">border</at>
704
           </super>
705
           <at name="borders">
706
            <object classname="java.util.LinkedList">
707
             <item >
708
              <at name="value">
709
               <object classname="com.jeta.forms.store.properties.DefaultBorderProperty">
710
                <super classname="com.jeta.forms.store.properties.BorderProperty">
711
                 <at name="name">border</at>
712
                </super>
713
               </object>
714
              </at>
715
             </item>
716
            </object>
717
           </at>
718
          </object>
719
         </at>
720
        </object>
721
       </at>
722
      </object>
723
     </at>
724
    </object>
725
   </at>
726
   <at name="cellpainters">
727
    <object classname="com.jeta.forms.store.support.Matrix">
728
     <at name="rows">
729
      <object classname="[Ljava.lang.Object;" size="15">
730
       <at name="item" index="0">
731
        <object classname="[Ljava.lang.Object;" size="6"/>
732
       </at>
733
       <at name="item" index="1">
734
        <object classname="[Ljava.lang.Object;" size="6"/>
735
       </at>
736
       <at name="item" index="2">
737
        <object classname="[Ljava.lang.Object;" size="6"/>
738
       </at>
739
       <at name="item" index="3">
740
        <object classname="[Ljava.lang.Object;" size="6"/>
741
       </at>
742
       <at name="item" index="4">
743
        <object classname="[Ljava.lang.Object;" size="6"/>
744
       </at>
745
       <at name="item" index="5">
746
        <object classname="[Ljava.lang.Object;" size="6"/>
747
       </at>
748
       <at name="item" index="6">
749
        <object classname="[Ljava.lang.Object;" size="6"/>
750
       </at>
751
       <at name="item" index="7">
752
        <object classname="[Ljava.lang.Object;" size="6"/>
753
       </at>
754
       <at name="item" index="8">
755
        <object classname="[Ljava.lang.Object;" size="6"/>
756
       </at>
757
       <at name="item" index="9">
758
        <object classname="[Ljava.lang.Object;" size="6"/>
759
       </at>
760
       <at name="item" index="10">
761
        <object classname="[Ljava.lang.Object;" size="6"/>
762
       </at>
763
       <at name="item" index="11">
764
        <object classname="[Ljava.lang.Object;" size="6"/>
765
       </at>
766
       <at name="item" index="12">
767
        <object classname="[Ljava.lang.Object;" size="6"/>
768
       </at>
769
       <at name="item" index="13">
770
        <object classname="[Ljava.lang.Object;" size="6"/>
771
       </at>
772
       <at name="item" index="14">
773
        <object classname="[Ljava.lang.Object;" size="6"/>
774
       </at>
775
      </object>
776
     </at>
777
    </object>
778
   </at>
779
   <at name="rowgroups">
780
    <object classname="com.jeta.forms.store.memento.FormGroupSet">
781
     <at name="groups">
782
      <object classname="java.util.HashMap"/>
783
     </at>
784
    </object>
785
   </at>
786
   <at name="colgroups">
787
    <object classname="com.jeta.forms.store.memento.FormGroupSet">
788
     <at name="groups">
789
      <object classname="java.util.HashMap"/>
790
     </at>
791
    </object>
792
   </at>
793
  </object>
794
 </at>
795
</object>
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DynamicEditingPointPanelView.java
1
/**
2
 * gvSIG. Desktop Geographic Information System.
3
 *
4
 * Copyright ? 2007-2014 gvSIG Association
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
 * MA  02110-1301, USA.
20
 *
21
 * For any additional information, do not hesitate to contact us
22
 * at info AT gvsig.com, or visit our website www.gvsig.com.
23
 */
24

  
25 1
package org.gvsig.vectorediting.swing.impl.contextmenu;
26 2

  
27
import java.awt.GridBagConstraints;
28
import java.awt.GridBagLayout;
29
import java.awt.Insets;
30

  
3
import com.jeta.open.i18n.I18NUtils;
4
import com.jgoodies.forms.layout.CellConstraints;
5
import com.jgoodies.forms.layout.FormLayout;
6
import java.awt.BorderLayout;
7
import java.awt.ComponentOrientation;
8
import java.awt.Container;
9
import java.awt.Dimension;
10
import javax.swing.Box;
11
import javax.swing.ButtonGroup;
12
import javax.swing.ImageIcon;
13
import javax.swing.JComboBox;
14
import javax.swing.JFrame;
31 15
import javax.swing.JLabel;
32 16
import javax.swing.JPanel;
17
import javax.swing.JRadioButton;
33 18
import javax.swing.JTextField;
34 19

  
35
import org.gvsig.fmap.geom.Geometry;
36
import org.gvsig.fmap.geom.primitive.Point;
37
import org.gvsig.fmap.geom.type.GeometryType;
38 20

  
39
/**
40
 * @author fdiaz
41
 *
42
 */
43
public class DynamicEditingPointPanelView extends JPanel {
21
public class DynamicEditingPointPanelView extends JPanel
22
{
23
   JRadioButton rdbUseAPointPreviouslyCaptured = new JRadioButton();
24
   ButtonGroup buttongroup1 = new ButtonGroup();
25
   JComboBox cboCapturedPoints = new JComboBox();
26
   JRadioButton rdbEnterTheCoordinatesManually = new JRadioButton();
27
   JLabel lblX = new JLabel();
28
   JLabel lblY = new JLabel();
29
   JTextField txtX = new JTextField();
30
   JTextField txtY = new JTextField();
31
   JLabel lblZ = new JLabel();
32
   JLabel lblM = new JLabel();
33
   JTextField txtZ = new JTextField();
34
   JTextField txtM = new JTextField();
44 35

  
45
    /**
46
     *
47
     */
48
    private static final long serialVersionUID = -9039752199011536211L;
36
   /**
37
    * Default constructor
38
    */
39
   public DynamicEditingPointPanelView()
40
   {
41
      initializePanel();
42
   }
49 43

  
50
    private Point defaultPoint = null;
51
    private int dimension = 2;
44
   /**
45
    * Adds fill components to empty cells in the first row and first column of the grid.
46
    * This ensures that the grid spacing will be the same as shown in the designer.
47
    * @param cols an array of column indices in the first row where fill components should be added.
48
    * @param rows an array of row indices in the first column where fill components should be added.
49
    */
50
   void addFillComponents( Container panel, int[] cols, int[] rows )
51
   {
52
      Dimension filler = new Dimension(10,10);
52 53

  
53
    private JLabel labels[];
54
      boolean filled_cell_11 = false;
55
      CellConstraints cc = new CellConstraints();
56
      if ( cols.length > 0 && rows.length > 0 )
57
      {
58
         if ( cols[0] == 1 && rows[0] == 1 )
59
         {
60
            /** add a rigid area  */
61
            panel.add( Box.createRigidArea( filler ), cc.xy(1,1) );
62
            filled_cell_11 = true;
63
         }
64
      }
54 65

  
55
    private JTextField fields[];
66
      for( int index = 0; index < cols.length; index++ )
67
      {
68
         if ( cols[index] == 1 && filled_cell_11 )
69
         {
70
            continue;
71
         }
72
         panel.add( Box.createRigidArea( filler ), cc.xy(cols[index],1) );
73
      }
56 74

  
57
    /**
58
     * @param dimension
59
     */
60
    public DynamicEditingPointPanelView(Point point) {
61
        super();
75
      for( int index = 0; index < rows.length; index++ )
76
      {
77
         if ( rows[index] == 1 && filled_cell_11 )
78
         {
79
            continue;
80
         }
81
         panel.add( Box.createRigidArea( filler ), cc.xy(1,rows[index]) );
82
      }
62 83

  
63
        this.defaultPoint = point;
64
        if(defaultPoint!=null){
65
            dimension = defaultPoint.getDimension();
66
        }
67
        labels = new JLabel[dimension];
68
        fields = new JTextField[dimension];
84
   }
69 85

  
70
        initialize();
86
   /**
87
    * Helper method to load an image file from the CLASSPATH
88
    * @param imageName the package and name of the file to load relative to the CLASSPATH
89
    * @return an ImageIcon instance with the specified image file
90
    * @throws IllegalArgumentException if the image resource cannot be loaded.
91
    */
92
   public ImageIcon loadImage( String imageName )
93
   {
94
      try
95
      {
96
         ClassLoader classloader = getClass().getClassLoader();
97
         java.net.URL url = classloader.getResource( imageName );
98
         if ( url != null )
99
         {
100
            ImageIcon icon = new ImageIcon( url );
101
            return icon;
102
         }
103
      }
104
      catch( Exception e )
105
      {
106
         e.printStackTrace();
107
      }
108
      throw new IllegalArgumentException( "Unable to load image: " + imageName );
109
   }
71 110

  
72
        addHierarchyChanged();
73
    }
111
   /**
112
    * Method for recalculating the component orientation for 
113
    * right-to-left Locales.
114
    * @param orientation the component orientation to be applied
115
    */
116
   public void applyComponentOrientation( ComponentOrientation orientation )
117
   {
118
      // Not yet implemented...
119
      // I18NUtils.applyComponentOrientation(this, orientation);
120
      super.applyComponentOrientation(orientation);
121
   }
74 122

  
75
    /**
76
     * Adds an hierarchy listener to value text field. The purpose of this is
77
     * request focus when texfield ancestor gains focus.
78
     */
79
    private void addHierarchyChanged() {
80
        getCoordinateTextField(0).addHierarchyListener(new DefaultHierarchyListener());
81
    }
123
   public JPanel createPanel()
124
   {
125
      JPanel jpanel1 = new JPanel();
126
      FormLayout formlayout1 = new FormLayout("FILL:4DLU:NONE,FILL:8DLU:NONE,FILL:DEFAULT:NONE,FILL:4DLU:NONE,FILL:DEFAULT:GROW(1.0),FILL:4DLU:NONE","CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:4DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE,CENTER:DEFAULT:NONE,CENTER:2DLU:NONE");
127
      CellConstraints cc = new CellConstraints();
128
      jpanel1.setLayout(formlayout1);
82 129

  
83
    private void initialize() {
84
        setLayout(new GridBagLayout());
130
      rdbUseAPointPreviouslyCaptured.setActionCommand("_Use_a_point_previously_captured");
131
      rdbUseAPointPreviouslyCaptured.setName("rdbUseAPointPreviouslyCaptured");
132
      rdbUseAPointPreviouslyCaptured.setText("_Use_a_point_previously_captured");
133
      buttongroup1.add(rdbUseAPointPreviouslyCaptured);
134
      jpanel1.add(rdbUseAPointPreviouslyCaptured,cc.xywh(2,2,4,1));
85 135

  
86
        for (int i = 0; i < dimension; i++) {
136
      cboCapturedPoints.setName("cboCapturedPoints");
137
      jpanel1.add(cboCapturedPoints,cc.xywh(3,4,3,1));
87 138

  
88
            GridBagConstraints constrains = new GridBagConstraints();
89
            constrains.gridx = GridBagConstraints.RELATIVE;
90
            constrains.gridy = i+1;
91
            constrains.weightx = 0;
92
            constrains.weighty = 0;
93
            constrains.insets = new Insets(5, 5, 5, 5);
94
            constrains.anchor = GridBagConstraints.WEST;
139
      rdbEnterTheCoordinatesManually.setActionCommand("_Enter_the_coordinates_manually");
140
      rdbEnterTheCoordinatesManually.setName("rdbEnterTheCoordinatesManually");
141
      rdbEnterTheCoordinatesManually.setText("_Enter_the_coordinates_manually");
142
      buttongroup1.add(rdbEnterTheCoordinatesManually);
143
      jpanel1.add(rdbEnterTheCoordinatesManually,cc.xywh(2,6,4,1));
95 144

  
96
            add(getCoordinateLabel(i), constrains);
145
      lblX.setName("lblX");
146
      lblX.setText("X");
147
      jpanel1.add(lblX,cc.xy(3,8));
97 148

  
98
            constrains = new GridBagConstraints();
99
            constrains.gridx = GridBagConstraints.RELATIVE;
100
            constrains.gridy = i+1;
101
            constrains.weightx = 1;
102
            constrains.weighty = 0;
103
            constrains.fill = GridBagConstraints.HORIZONTAL;
104
            constrains.insets = new Insets(5, 5, 5, 5);
105
            constrains.anchor = GridBagConstraints.EAST;
149
      lblY.setName("lblY");
150
      lblY.setText("Y");
151
      jpanel1.add(lblY,cc.xy(3,10));
106 152

  
107
            add(getCoordinateTextField(i), constrains);
108
            if (defaultPoint != null) {
109
                getCoordinateTextField(i).setText(String.valueOf(defaultPoint.getCoordinateAt(i)));
110
            }
111
        }
112
    }
153
      txtX.setName("txtX");
154
      jpanel1.add(txtX,cc.xy(5,8));
113 155

  
114
    protected JTextField getCoordinateTextField(int i) {
115
        if (fields[i] == null) {
116
            fields[i] = new JTextField();
117
        }
118
        return fields[i];
119
    }
156
      txtY.setName("txtY");
157
      jpanel1.add(txtY,cc.xy(5,10));
120 158

  
121
    private JLabel getCoordinateLabel(int i) {
122
        if (labels[i] == null) {
123
            labels[i] = new JLabel(createLabel(i));
124
        }
125
        return labels[i];
126
    }
159
      lblZ.setName("lblZ");
160
      lblZ.setText("Z");
161
      jpanel1.add(lblZ,cc.xy(3,12));
127 162

  
128
    private String createLabel(int i){
129
        if(i==0){
130
            return "X";
131
        }
132
        if(i==1){
133
            return "Y";
134
        }
135
        if (defaultPoint != null) {
136
            GeometryType geomType = defaultPoint.getGeometryType();
137
            if ((geomType.isSubTypeOf(Geometry.SUBTYPES.GEOM2DM) || geomType.isSubTypeOf(Geometry.SUBTYPES.GEOM3DM))
138
                && i == defaultPoint.getDimension() - 1) {
139
                return "M";
140
            }
141
            if (i == 2) {
142
                return "Z";
143
            }
144
            if (i > 2) {
145
                return "C".concat(String.valueOf(i));
146
            }
147
        } else {
148
            if (i > 1) {
149
                return "C".concat(String.valueOf(i));
150
            }
151
        }
152
        return "";
153
    }
163
      lblM.setName("lblM");
164
      lblM.setText("M");
165
      jpanel1.add(lblM,cc.xy(3,14));
166

  
167
      txtZ.setName("txtZ");
168
      jpanel1.add(txtZ,cc.xy(5,12));
169

  
170
      txtM.setName("txtM");
171
      jpanel1.add(txtM,cc.xy(5,14));
172

  
173
      addFillComponents(jpanel1,new int[]{ 1,2,3,4,5,6 },new int[]{ 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 });
174
      return jpanel1;
175
   }
176

  
177
   /**
178
    * Initializer
179
    */
180
   protected void initializePanel()
181
   {
182
      setLayout(new BorderLayout());
183
      add(createPanel(), BorderLayout.CENTER);
184
   }
185

  
186

  
154 187
}
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DefaultEditingContextMenu.java
177 177
            dimension = defaultPoint.getDimension();
178 178
        }
179 179

  
180
        final DefaultDynamicEditingPointPanel pointPanel = new DefaultDynamicEditingPointPanel(defaultPoint);
180
        final DefaultDynamicEditingPointPanel pointPanel = new DefaultDynamicEditingPointPanel(null, defaultPoint);
181 181
        if(defaultPoint!=null){
182 182
            for(int i=0; i<dimension; i++){
183 183
                pointPanel.setValue(i, String.valueOf(defaultPoint.getCoordinateAt(i)));
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DefaultEditingPointPanel.java
58 58

  
59 59
    public DefaultEditingPointPanel() {
60 60
        super();
61
        this.initComponents();
61 62
    }
62 63

  
63 64
    public JComponent asJComponent() {
64 65
        return this;
65 66
    }
66 67

  
68
    private void initComponents() {
69
        addHierarchyChanged();
70
    }
71

  
72
    /**
73
     * Adds an hierarchy listener to value text field. The purpose of this is
74
     * request focus when texfield ancestor gains focus.
75
     */
76
    private void addHierarchyChanged() {
77
        getXTextField().addHierarchyListener(new DefaultHierarchyListener());
78
    }
79
    
67 80
    public String getXValue() {
68 81
        return getXTextField().getText();
69 82
    }
......
71 84
    public String getYValue() {
72 85
        return getYTextField().getText();
73 86
    }
74

  
75 87
}
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/DefaultDynamicEditingPointPanel.java
46 46
 */
47 47
package org.gvsig.vectorediting.swing.impl.contextmenu;
48 48

  
49
import java.awt.event.ActionEvent;
50
import java.awt.event.ActionListener;
51
import java.awt.event.ItemEvent;
52
import java.awt.event.ItemListener;
53
import java.util.Objects;
54
import javax.swing.DefaultComboBoxModel;
49 55
import javax.swing.JComponent;
56
import org.apache.commons.lang3.StringUtils;
57
import org.apache.commons.lang3.tuple.Pair;
58
import org.gvsig.expressionevaluator.swing.CalculatorController;
59
import org.gvsig.expressionevaluator.swing.ExpressionEvaluatorSwingLocator;
60
import org.gvsig.expressionevaluator.swing.ExpressionEvaluatorSwingManager;
61
import org.gvsig.fmap.dal.DataTypes;
62
import org.gvsig.fmap.geom.Geometry;
63
import org.gvsig.fmap.geom.GeometryLocator;
50 64

  
51 65
import org.gvsig.fmap.geom.primitive.Point;
66
import org.gvsig.fmap.geom.type.GeometryType;
67
import org.gvsig.fmap.geom.type.GeometryTypeNotSupportedException;
68
import org.gvsig.fmap.geom.type.GeometryTypeNotValidException;
69
import org.gvsig.temporarystorage.TemporaryStorageGroup;
70
import org.gvsig.temporarystorage.TemporaryStorageLocator;
71
import org.gvsig.tools.locator.LocatorException;
72
import org.gvsig.tools.swing.api.ListElement;
73
import org.gvsig.tools.swing.api.ToolsSwingLocator;
74
import org.gvsig.tools.swing.api.ToolsSwingManager;
52 75

  
53 76
/**
54 77
 * @author fdiaz
......
60 83
     *
61 84
     */
62 85
    private static final long serialVersionUID = 2398169399771503091L;
86
    private final Point defaultPoint;
87
    private final CalculatorController pickers[];
88
    private CalculatorController pickerX;
89
    private CalculatorController pickerY;
90
    private CalculatorController pickerZ;
91
    private CalculatorController pickerM;
92
    private final GeometryType geomType;
63 93

  
64 94
    /**
95
     * @param geomType
65 96
     * @param point
66 97
     */
67
    public DefaultDynamicEditingPointPanel(Point point) {
68
        super(point);
98
    public DefaultDynamicEditingPointPanel(GeometryType geomType, Point point)  {
99
        super();
100
        this.defaultPoint = point;
101
        if( geomType==null ) {
102
            if( this.defaultPoint==null ) {
103
                try {
104
                    this.geomType = GeometryLocator.getGeometryManager().getGeometryType(
105
                            Geometry.TYPES.POINT,
106
                            Geometry.SUBTYPES.GEOM2D
107
                    );
108
                } catch (GeometryTypeNotSupportedException | GeometryTypeNotValidException | LocatorException ex) {
109
                    throw new IllegalArgumentException("Can't create the geometry type, and params are null.");
110
                }
111
            } else {
112
                this.geomType = this.defaultPoint.getGeometryType();
113
            }
114
        } else {
115
            this.geomType = geomType;
116
        }
117
        this.pickers = new CalculatorController[this.geomType.getDimension()];
118
        this.initComponents();
69 119
    }
70 120

  
121
    private void initComponents() {
122
        ToolsSwingManager toolsSwingManager = ToolsSwingLocator.getToolsSwingManager();
123
        ExpressionEvaluatorSwingManager evaluatorManager = ExpressionEvaluatorSwingLocator.getManager();
124

  
125
        toolsSwingManager.translate(this.rdbEnterTheCoordinatesManually);
126
        toolsSwingManager.translate(this.rdbUseAPointPreviouslyCaptured);
127

  
128
        toolsSwingManager.addClearButton(this.txtX);
129
        toolsSwingManager.addClearButton(this.txtY);
130
        toolsSwingManager.addClearButton(this.txtZ);
131
        toolsSwingManager.addClearButton(this.txtM);
132

  
133
        toolsSwingManager.setDefaultPopupMenu(this.txtX);
134
        toolsSwingManager.setDefaultPopupMenu(this.txtY);
135
        toolsSwingManager.setDefaultPopupMenu(this.txtZ);
136
        toolsSwingManager.setDefaultPopupMenu(this.txtM);
137

  
138
        this.pickerX = evaluatorManager.createCalculatorController(
139
                this.txtX, DataTypes.DOUBLE
140
        );
141
        this.pickerY = evaluatorManager.createCalculatorController(
142
                this.txtY, DataTypes.DOUBLE
143
        );
144
        this.pickerZ = evaluatorManager.createCalculatorController(
145
                this.txtZ, DataTypes.DOUBLE
146
        );
147
        this.pickerM = evaluatorManager.createCalculatorController(
148
                this.txtM, DataTypes.DOUBLE
149
        );
150
        this.pickers[0] = this.pickerX;
151
        this.pickers[1] = this.pickerY;
152
        if( this.geomType.hasZ() && this.geomType.hasM() ) {
153
            this.pickers[2] = this.pickerZ;
154
            this.pickers[3] = this.pickerM;                
155
        } else if( this.geomType.hasZ() ) {
156
            this.pickers[2] = this.pickerZ;
157
        } else if( this.geomType.hasM() ) {
158
            this.pickers[2] = this.pickerM;
159
        }
160
        
161
        addHierarchyChanged();
162
        
163
        TemporaryStorageGroup points = TemporaryStorageLocator.getTemporaryStorageManager()
164
                .create("Points",Point.class);
165
        
166
        DefaultComboBoxModel model = new DefaultComboBoxModel();
167
        model.addElement(new ListElement("", null));
168
        for (Pair<String, Object> pair : points.asList()) {
169
            model.addElement(new ListElement(pair.getKey(), (Point)(pair.getValue())));
170
        }
171
        this.cboCapturedPoints.setModel(model);
172
        this.cboCapturedPoints.addItemListener(new ItemListener() {
173
            @Override
174
            public void itemStateChanged(ItemEvent e) {
175
                if( e.getStateChange()==ItemEvent.SELECTED ) {
176
                    setPoint(((ListElement<Point>)e.getItem()).getValue());
177
                }
178
            }
179
        });
180
        this.rdbEnterTheCoordinatesManually.addActionListener(new ActionListener() {
181
            @Override
182
            public void actionPerformed(ActionEvent e) {
183
                updateEnabledState();
184
            }
185
        });
186
        this.rdbUseAPointPreviouslyCaptured.addActionListener(new ActionListener() {
187
            @Override
188
            public void actionPerformed(ActionEvent e) {
189
                updateEnabledState();
190
            }
191
        });
192
        this.rdbEnterTheCoordinatesManually.setSelected(true);
193
        this.updateEnabledState();
194
    }
195
    
196
    private void updateEnabledState() {
197
        
198
        if( this.rdbEnterTheCoordinatesManually.isSelected()) {
199
            this.cboCapturedPoints.setEnabled(false);
200
            
201
            this.txtX.setEnabled(true);
202
            this.txtY.setEnabled(true);
203
            this.txtZ.setEnabled(false);
204
            this.txtM.setEnabled(false);
205

  
206
            this.lblX.setEnabled(true);
207
            this.lblY.setEnabled(true);
208
            this.lblZ.setEnabled(false);
209
            this.lblM.setEnabled(false);
210
            if( geomType.hasZ() && geomType.hasM() ) {
211
                this.txtZ.setEnabled(true);
212
                this.lblZ.setEnabled(true);
213
                this.txtM.setEnabled(true);
214
                this.lblM.setEnabled(true);
215
            } else if( geomType.hasZ() ) {
216
                this.txtZ.setEnabled(true);
217
                this.lblZ.setEnabled(true);
218
            } else if( geomType.hasM() ) {
219
                this.txtM.setEnabled(true);
220
                this.lblM.setEnabled(true);
221
            }
222
        }
223
        if( this.rdbUseAPointPreviouslyCaptured.isSelected()) {
224
            this.cboCapturedPoints.setEnabled(true);
225
            
226
            this.txtX.setEnabled(false);
227
            this.txtY.setEnabled(false);
228
            this.txtZ.setEnabled(false);
229
            this.txtM.setEnabled(false);
230

  
231
            this.lblX.setEnabled(false);
232
            this.lblY.setEnabled(false);
233
            this.lblZ.setEnabled(false);
234
            this.lblM.setEnabled(false);
235
        }
236
    }
237

  
238
    public void setPoint(Point point) {
239
        if( point == null ) {
240
            this.pickerX.set(null);
241
            this.pickerY.set(null);
242
            this.pickerZ.set(null);
243
            this.pickerM.set(null);
244
            return;
245
        }
246
        this.pickerX.set( point.getX() );
247
        this.pickerY.set( point.getY() );
248
        GeometryType theGeomType = point.getGeometryType();
249
        if( theGeomType.hasZ() ) {
250
            this.pickerZ.set(point.getCoordinateAt(Geometry.DIMENSIONS.Z));
251
        } 
252
        if( theGeomType.hasM() ) {
253
            this.pickerM.set(point.getCoordinateAt(point.getDimension()-1));
254
        }
255
    }
256
    
257
    private void addHierarchyChanged() {
258
        this.txtX.addHierarchyListener(new DefaultHierarchyListener());
259
    }
260

  
71 261
    /**
72 262
     * @return this as JComponent
73 263
     */
......
80 270
     * @return String value of coordinate i
81 271
     */
82 272
    public String getValue(int i) {
83
        return getCoordinateTextField(i).getText();
273
        return Objects.toString(this.pickers[i].get(),"");
84 274
    }
85 275

  
86 276
    /**
......
88 278
     * @param value
89 279
     */
90 280
    public void setValue(int i, String value) {
91
        getCoordinateTextField(i).setText(value);
281
        if( StringUtils.isBlank(value) ) {
282
            this.pickers[i].set(null);
283
            return;
284
        } 
285
        this.pickers[i].coerceAndSet(value);
92 286
    }
93 287
}
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/src/main/java/org/gvsig/vectorediting/swing/impl/contextmenu/EditingPointPanelView.java
54 54

  
55 55
        initialize();
56 56

  
57
        addHierarchyChanged();
57
//        addHierarchyChanged();
58 58
    }
59 59

  
60
    /**
61
     * Adds an hierarchy listener to value text field. The purpose of this is
62
     * request focus when texfield ancestor gains focus.
63
     */
64
    private void addHierarchyChanged() {
65
        getXTextField().addHierarchyListener(new DefaultHierarchyListener());
66
    }
60
//    /**
61
//     * Adds an hierarchy listener to value text field. The purpose of this is
62
//     * request focus when texfield ancestor gains focus.
63
//     */
64
//    private void addHierarchyChanged() {
65
//        getXTextField().addHierarchyListener(new DefaultHierarchyListener());
66
//    }
67 67

  
68 68
    private void initialize() {
69 69
        setLayout(new GridBagLayout());
org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.swing/org.gvsig.vectorediting.swing.impl/pom.xml
1 1
<?xml version="1.0" encoding="ISO-8859-1"?>
2 2
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3
	<modelVersion>4.0.0</modelVersion>
4
	<artifactId>org.gvsig.vectorediting.swing.impl</artifactId>
5
	<packaging>jar</packaging>
6
	<name>org.gvsig.vectorediting.swing.impl</name>
7
	<parent>
8
		<groupId>org.gvsig</groupId>
9
		<artifactId>org.gvsig.vectorediting.swing</artifactId>
10
		<version>1.0.86-SNAPSHOT</version>
11
	</parent>
12
	<dependencies>
13
		<dependency>
14
			<groupId>org.gvsig</groupId>
15
			<artifactId>org.gvsig.vectorediting.swing.api</artifactId>
16
		</dependency>
17
    <dependency>
18
      <groupId>org.gvsig</groupId>
19
      <artifactId>org.gvsig.vectorediting.lib.spi</artifactId>
20
    </dependency>
21
	</dependencies>
3
    <modelVersion>4.0.0</modelVersion>
4
    <artifactId>org.gvsig.vectorediting.swing.impl</artifactId>
5
    <packaging>jar</packaging>
6
    <name>org.gvsig.vectorediting.swing.impl</name>
7
    <parent>
8
        <groupId>org.gvsig</groupId>
9
        <artifactId>org.gvsig.vectorediting.swing</artifactId>
10
        <version>1.0.86-SNAPSHOT</version>
11
    </parent>
12
    <dependencies>
13
        <dependency>
14
            <groupId>org.gvsig</groupId>
15
            <artifactId>org.gvsig.vectorediting.swing.api</artifactId>
16
            <scope>compile</scope>
17
        </dependency>
18
        <dependency>
19
            <groupId>org.gvsig</groupId>
20
            <artifactId>org.gvsig.vectorediting.lib.spi</artifactId>
21
            <scope>compile</scope>
22
        </dependency>
23
        <dependency>
24
            <groupId>com.jgoodies</groupId>
25
            <artifactId>jgoodies-forms</artifactId>
26
            <scope>compile</scope>
27
        </dependency>
28
        <dependency>
29
            <groupId>org.gvsig</groupId>
30
            <artifactId>org.gvsig.temporarystorage.lib.api</artifactId>
31
            <scope>compile</scope>
32
        </dependency>
33
    </dependencies>
22 34
</project>
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff