Statistics
| Revision:

svn-gvsig-desktop / trunk / applications / appgvSIG / src / com / iver / cit / gvsig / project / ViewProperties.java @ 904

History | View | Annotate | Download (17.2 KB)

1
package com.iver.cit.gvsig.project;
2

    
3

    
4
import java.awt.Color;
5

    
6
import javax.swing.JColorChooser;
7
import javax.swing.JPanel;
8

    
9
import com.iver.andami.PluginServices;
10
import com.iver.andami.Utilities;
11
import com.iver.andami.ui.mdiManager.View;
12
import com.iver.andami.ui.mdiManager.ViewInfo;
13
import com.iver.cit.gvsig.fmap.core.v02.FSymbol;
14
import com.iver.cit.gvsig.gui.layout.Attributes;
15
import com.iver.cit.gvsig.project.castor.ProjectView;
16

    
17

    
18
import javax.swing.JLabel;
19
import javax.swing.JButton;
20
/**
21
 * Dialogo donde se muestran las propiedades de una vista
22
 *
23
 * @author Fernando Gonz?lez Cort?s
24
 */
25
public class ViewProperties extends JPanel implements View{
26
    /*private String[] units = new String[] {
27
            PluginServices.getText(this, "metros"),
28
            PluginServices.getText(this, "kilometros"),
29
        };
30
    */
31
    private javax.swing.JPanel jContentPane = null;
32
    private javax.swing.JLabel jLabel = null;
33
    private javax.swing.JTextField txtName = null;
34
    private javax.swing.JLabel jLabel1 = null;
35
    private javax.swing.JTextField txtDate = null;
36
    private javax.swing.JLabel jLabel2 = null;
37
    private javax.swing.JTextField txtOwner = null;
38
    private javax.swing.JLabel jLabel4 = null;
39
    private javax.swing.JComboBox cmbMapUnits = null;
40
    private javax.swing.JLabel jLabel5 = null;
41
    private javax.swing.JComboBox cmbDistanceUnits = null;
42
    private javax.swing.JLabel jLabel6 = null;
43
    private javax.swing.JTextArea txtComments = null;
44
    private javax.swing.JLabel jLabel7 = null;
45
    private javax.swing.JLabel lblColor = null;
46
    private javax.swing.JButton btnColor = null;
47
    private javax.swing.JButton btnOk = null;
48
    private javax.swing.JButton btnCancel = null;
49
    private ProjectView view=null;
50
    private javax.swing.JScrollPane jScrollPane = null;
51
    private javax.swing.JPanel jPanel = null;
52
    private javax.swing.JPanel jPanel1 = null;
53
    private javax.swing.JPanel jPanel2 = null;
54
    private javax.swing.JPanel jPanel3 = null;
55
    private javax.swing.JLabel jLabel3 = null;
56
    private ViewInfo m_viewinfo = null;
57
        private JLabel jLblProj = null;
58
        private JLabel jLblProjName = null;
59
        private JButton jBtnChangeProj = null;
60
        private JPanel jPanelProj = null;
61
    /**
62
     * This is the default constructor
63
     *
64
     * @param f Frame padre del dialogo
65
     * @param v Vista que se representa
66
     */
67
    public ViewProperties(ProjectView v) {
68
        view = v;
69
        initialize();
70
    }
71

    
72
    /**
73
     * This method initializes this
74
     */
75
    private void initialize() {
76
        jLblProjName = new JLabel();
77
        jLblProj = new JLabel();
78
        this.setSize(365, 343);
79
                java.awt.FlowLayout layFlowLayout3 = new java.awt.FlowLayout();
80
                layFlowLayout3.setHgap(0);
81
                setLayout(layFlowLayout3);
82
                jLblProj.setText(view.getProjection().getAbrev());
83
                jLblProj.setPreferredSize(new java.awt.Dimension(180,20));
84
                jLblProjName.setText("Proyecci?n actual:");
85
                jLblProjName.setPreferredSize(new java.awt.Dimension(95,15));
86
                this.setPreferredSize(new java.awt.Dimension(365,343));
87
                add(getJPanel(), null);
88
                add(getJPanel1(), null);
89
                add(getJPanel2(), null);
90
                add(getJPanel3(), null);
91
                this.add(getJPanelProj(), null);
92
                this.add(getJLabel6(), null);
93
                add(getJScrollPane(), null);
94
                this.add(getJLabel7(), null);
95
                this.add(getLblColor(), null);
96
                this.add(getBtnColor(), null);
97
                add(getJLabel3(), null);
98
                this.add(getBtnOk(), null);
99
                this.add(getBtnCancel(), null);
100
        txtName.setText(view.getName());
101
        txtDate.setText(view.getCreationDate());
102
        txtOwner.setText(view.getOwner());
103

    
104
        cmbMapUnits.setSelectedIndex(view.getMapContext().getViewPort().getMapUnits());
105
        cmbDistanceUnits.setSelectedIndex(view.getMapContext().getViewPort().getDistanceUnits());
106

    
107
        txtComments.setText(view.getComment());
108

    
109
        lblColor.setBackground(view.getBackgroundColor());
110
    }
111

    
112
    /**
113
     * This method initializes jLabel
114
     *
115
     * @return javax.swing.JLabel
116
     */
117
    private javax.swing.JLabel getJLabel() {
118
        if (jLabel == null) {
119
            jLabel = new javax.swing.JLabel();
120
            jLabel.setText(PluginServices.getText(this, "nombre") + ":");
121
        }
122

    
123
        return jLabel;
124
    }
125

    
126
    /**
127
     * This method initializes txtName
128
     *
129
     * @return javax.swing.JTextField
130
     */
131
    private javax.swing.JTextField getTxtName() {
132
        if (txtName == null) {
133
            txtName = new javax.swing.JTextField();
134
            txtName.setPreferredSize(new java.awt.Dimension(220, 20));
135
        }
136

    
137
        return txtName;
138
    }
139

    
140
    /**
141
     * This method initializes jLabel1
142
     *
143
     * @return javax.swing.JLabel
144
     */
145
    private javax.swing.JLabel getJLabel1() {
146
        if (jLabel1 == null) {
147
            jLabel1 = new javax.swing.JLabel();
148
            jLabel1.setText(PluginServices.getText(this, "creation_date") + ":");
149
        }
150

    
151
        return jLabel1;
152
    }
153

    
154
    /**
155
     * This method initializes txtDate
156
     *
157
     * @return javax.swing.JTextField
158
     */
159
    private javax.swing.JTextField getTxtDate() {
160
        if (txtDate == null) {
161
            txtDate = new javax.swing.JTextField();
162
            txtDate.setPreferredSize(new java.awt.Dimension(220, 20));
163
            txtDate.setEditable(false);
164
            txtDate.setBackground(java.awt.Color.white);
165
        }
166

    
167
        return txtDate;
168
    }
169

    
170
    /**
171
     * This method initializes jLabel2
172
     *
173
     * @return javax.swing.JLabel
174
     */
175
    private javax.swing.JLabel getJLabel2() {
176
        if (jLabel2 == null) {
177
            jLabel2 = new javax.swing.JLabel();
178
            jLabel2.setText(PluginServices.getText(this, "owner") + ":");
179
        }
180

    
181
        return jLabel2;
182
    }
183

    
184
    /**
185
     * This method initializes txtOwner
186
     *
187
     * @return javax.swing.JTextField
188
     */
189
    private javax.swing.JTextField getTxtOwner() {
190
        if (txtOwner == null) {
191
            txtOwner = new javax.swing.JTextField();
192
            txtOwner.setPreferredSize(new java.awt.Dimension(220, 20));
193
        }
194

    
195
        return txtOwner;
196
    }
197

    
198
    /**
199
     * This method initializes jLabel4
200
     *
201
     * @return javax.swing.JLabel
202
     */
203
    private javax.swing.JLabel getJLabel4() {
204
        if (jLabel4 == null) {
205
            jLabel4 = new javax.swing.JLabel();
206
            jLabel4.setText(PluginServices.getText(this, "map_units") + ":");
207
        }
208

    
209
        return jLabel4;
210
    }
211

    
212
    /**
213
     * This method initializes cmbMapUnits
214
     *
215
     * @return javax.swing.JComboBox
216
     */
217
    private javax.swing.JComboBox getCmbMapUnits() {
218
        if (cmbMapUnits == null) {
219
            cmbMapUnits = new javax.swing.JComboBox(Attributes.NAMES);
220
            cmbMapUnits.setPreferredSize(new java.awt.Dimension(160, 20));
221
                       //cmbMapUnits.setSelectedIndex(1);
222
            cmbMapUnits.addActionListener(new java.awt.event.ActionListener() { 
223
                    public void actionPerformed(java.awt.event.ActionEvent e) {    
224
                            view.getMapContext().getViewPort().setMapUnits(cmbMapUnits.getSelectedIndex());
225
                    }
226
            });
227
        }
228

    
229
        return cmbMapUnits;
230
    }
231

    
232
    /**
233
     * This method initializes jLabel5
234
     *
235
     * @return javax.swing.JLabel
236
     */
237
    private javax.swing.JLabel getJLabel5() {
238
        if (jLabel5 == null) {
239
            jLabel5 = new javax.swing.JLabel();
240
            jLabel5.setText(PluginServices.getText(this, "distance_units") + ":");
241
        }
242

    
243
        return jLabel5;
244
    }
245

    
246
    /**
247
     * This method initializes cmbDistanceUnits
248
     *
249
     * @return javax.swing.JComboBox
250
     */
251
    private javax.swing.JComboBox getCmbDistanceUnits() {
252
        if (cmbDistanceUnits == null) {
253
            cmbDistanceUnits = new javax.swing.JComboBox(Attributes.NAMES);
254
            cmbDistanceUnits.setPreferredSize(new java.awt.Dimension(160, 20));
255
            cmbDistanceUnits.setEditable(false);
256
            //cmbDistanceUnits.setSelectedIndex(1);
257
            cmbDistanceUnits.addActionListener(new java.awt.event.ActionListener() { 
258
                    public void actionPerformed(java.awt.event.ActionEvent e) {    
259
                            view.getMapContext().getViewPort().setDistanceUnits(cmbDistanceUnits.getSelectedIndex());
260
                    }
261
            });
262
        }
263

    
264
        return cmbDistanceUnits;
265
    }
266

    
267
    /**
268
     * This method initializes jLabel6
269
     *
270
     * @return javax.swing.JLabel
271
     */
272
    private javax.swing.JLabel getJLabel6() {
273
        if (jLabel6 == null) {
274
            jLabel6 = new javax.swing.JLabel();
275
            jLabel6.setText(PluginServices.getText(this, "comentarios") + ":");
276
            jLabel6.setPreferredSize(new java.awt.Dimension(330,15));
277
            jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
278
            jLabel6.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT);
279
        }
280

    
281
        return jLabel6;
282
    }
283

    
284
    /**
285
     * This method initializes txtComments
286
     *
287
     * @return javax.swing.JTextArea
288
     */
289
    private javax.swing.JTextArea getTxtComments() {
290
        if (txtComments == null) {
291
            txtComments = new javax.swing.JTextArea();
292
            txtComments.setRows(1);
293
            txtComments.setColumns(28);
294
        }
295

    
296
        return txtComments;
297
    }
298

    
299
    /**
300
     * This method initializes jLabel7
301
     *
302
     * @return javax.swing.JLabel
303
     */
304
    private javax.swing.JLabel getJLabel7() {
305
        if (jLabel7 == null) {
306
            jLabel7 = new javax.swing.JLabel();
307
            jLabel7.setText(PluginServices.getText(this, "background_color") +
308
                ":");
309
            jLabel7.setPreferredSize(new java.awt.Dimension(240,16));
310
        }
311

    
312
        return jLabel7;
313
    }
314

    
315
    /**
316
     * This method initializes lblColor
317
     *
318
     * @return javax.swing.JLabel
319
     */
320
    private javax.swing.JLabel getLblColor() {
321
        if (lblColor == null) {
322
            lblColor = new javax.swing.JLabel();
323
            lblColor.setText("");
324
            lblColor.setPreferredSize(new java.awt.Dimension(30, 16));
325
            lblColor.setOpaque(true);
326
        }
327

    
328
        return lblColor;
329
    }
330

    
331
    /**
332
     * This method initializes btnColor
333
     *
334
     * @return javax.swing.JButton
335
     */
336
    private javax.swing.JButton getBtnColor() {
337
        if (btnColor == null) {
338
            btnColor = new javax.swing.JButton();
339
            btnColor.setPreferredSize(new java.awt.Dimension(34, 16));
340
            btnColor.setText("...");
341

    
342
            btnColor.addActionListener(new java.awt.event.ActionListener() {
343
                    public void actionPerformed(java.awt.event.ActionEvent e) {
344
                        Color ret = JColorChooser.showDialog(ViewProperties.this,
345
                                PluginServices.getText(this, "background_color"),
346
                                lblColor.getBackground());
347

    
348
                        if (ret != null) {
349
                            lblColor.setBackground(ret);
350
                        }
351
                    }
352
                });
353
        }
354

    
355
        return btnColor;
356
    }
357

    
358
    /**
359
     * This method initializes btnOk
360
     *
361
     * @return javax.swing.JButton
362
     */
363
    private javax.swing.JButton getBtnOk() {
364
        if (btnOk == null) {
365
            btnOk = new javax.swing.JButton();
366
            btnOk.setPreferredSize(new java.awt.Dimension(100, 30));
367
            btnOk.setText(PluginServices.getText(this, "ok"));
368

    
369
            btnOk.addActionListener(new java.awt.event.ActionListener() {
370
                    public void actionPerformed(java.awt.event.ActionEvent e) {
371
                        view.setName(txtName.getText());
372
                        view.setCreationDate(txtDate.getText());
373
                        view.setOwner(txtOwner.getText());
374
                        view.setComment(txtComments.getText());
375
                        view.getMapContext().getViewPort().setMapUnits(cmbMapUnits.getSelectedIndex());
376
                        view.getMapContext().getViewPort().setDistanceUnits(cmbDistanceUnits.getSelectedIndex());
377
                        view.setBackgroundColor(lblColor.getBackground());
378
                        PluginServices.getMDIManager().closeView(ViewProperties.this);
379
                    }
380
                });
381
        }
382

    
383
        return btnOk;
384
    }
385

    
386
    /**
387
     * This method initializes btnCancel
388
     *
389
     * @return javax.swing.JButton
390
     */
391
    private javax.swing.JButton getBtnCancel() {
392
        if (btnCancel == null) {
393
            btnCancel = new javax.swing.JButton();
394
            btnCancel.setPreferredSize(new java.awt.Dimension(100, 30));
395
            btnCancel.setText(PluginServices.getText(this, "cancel"));
396

    
397
            btnCancel.addActionListener(new java.awt.event.ActionListener() {
398
                    public void actionPerformed(java.awt.event.ActionEvent e) {
399
                            PluginServices.getMDIManager().closeView(ViewProperties.this);
400
                    }
401
                });
402
        }
403

    
404
        return btnCancel;
405
    }
406

    
407
    /**
408
     * This method initializes jScrollPane
409
     *
410
     * @return javax.swing.JScrollPane
411
     */
412
    private javax.swing.JScrollPane getJScrollPane() {
413
        if (jScrollPane == null) {
414
            jScrollPane = new javax.swing.JScrollPane();
415
            jScrollPane.setViewportView(getTxtComments());
416
            jScrollPane.setPreferredSize(new java.awt.Dimension(320, 70));
417
        }
418

    
419
        return jScrollPane;
420
    }
421

    
422
    /**
423
     * This method initializes jPanel
424
     *
425
     * @return javax.swing.JPanel
426
     */
427
    private javax.swing.JPanel getJPanel() {
428
        if (jPanel == null) {
429
            jPanel = new javax.swing.JPanel();
430

    
431
            java.awt.FlowLayout layFlowLayout4 = new java.awt.FlowLayout();
432
            layFlowLayout4.setAlignment(java.awt.FlowLayout.RIGHT);
433
            layFlowLayout4.setVgap(9);
434
            jPanel.setLayout(layFlowLayout4);
435
            jPanel.add(getJLabel(), null);
436
            jPanel.add(getJLabel1(), null);
437
            jPanel.add(getJLabel2(), null);
438
            jPanel.setPreferredSize(new java.awt.Dimension(100, 80));
439
        }
440

    
441
        return jPanel;
442
    }
443

    
444
    /**
445
     * This method initializes jPanel1
446
     *
447
     * @return javax.swing.JPanel
448
     */
449
    private javax.swing.JPanel getJPanel1() {
450
        if (jPanel1 == null) {
451
            jPanel1 = new javax.swing.JPanel();
452

    
453
            java.awt.FlowLayout layFlowLayout2 = new java.awt.FlowLayout();
454
            layFlowLayout2.setHgap(5);
455
            layFlowLayout2.setAlignment(java.awt.FlowLayout.LEFT);
456
            jPanel1.setLayout(layFlowLayout2);
457
            jPanel1.add(getTxtName(), null);
458
            jPanel1.add(getTxtDate(), null);
459
            jPanel1.add(getTxtOwner(), null);
460
            jPanel1.setPreferredSize(new java.awt.Dimension(230, 80));
461
        }
462

    
463
        return jPanel1;
464
    }
465

    
466
    /**
467
     * This method initializes jPanel2
468
     *
469
     * @return javax.swing.JPanel
470
     */
471
    private javax.swing.JPanel getJPanel2() {
472
        if (jPanel2 == null) {
473
            jPanel2 = new javax.swing.JPanel();
474

    
475
            java.awt.FlowLayout layFlowLayout5 = new java.awt.FlowLayout();
476
            layFlowLayout5.setAlignment(java.awt.FlowLayout.RIGHT);
477
            layFlowLayout5.setVgap(9);
478
            jPanel2.setLayout(layFlowLayout5);
479
            jPanel2.add(getJLabel4(), null);
480
            jPanel2.add(getJLabel5(), null);
481
            jPanel2.setPreferredSize(new java.awt.Dimension(100, 50));
482
        }
483

    
484
        return jPanel2;
485
    }
486

    
487
    /**
488
     * This method initializes jPanel3
489
     *
490
     * @return javax.swing.JPanel
491
     */
492
    private javax.swing.JPanel getJPanel3() {
493
        if (jPanel3 == null) {
494
            jPanel3 = new javax.swing.JPanel();
495

    
496
            java.awt.FlowLayout layFlowLayout6 = new java.awt.FlowLayout();
497
            layFlowLayout6.setAlignment(java.awt.FlowLayout.LEFT);
498
            jPanel3.setLayout(layFlowLayout6);
499
            jPanel3.add(getCmbMapUnits(), null);
500
            jPanel3.add(getCmbDistanceUnits(), null);
501
            jPanel3.setPreferredSize(new java.awt.Dimension(230, 50));
502
        }
503

    
504
        return jPanel3;
505
    }
506

    
507
    /**
508
     * This method initializes jLabel3
509
     *
510
     * @return javax.swing.JLabel
511
     */
512
    private javax.swing.JLabel getJLabel3() {
513
        if (jLabel3 == null) {
514
            jLabel3 = new javax.swing.JLabel();
515
            jLabel3.setText("");
516
            jLabel3.setPreferredSize(new java.awt.Dimension(30, 0));
517
        }
518

    
519
        return jLabel3;
520
    }
521

    
522
        /**
523
         * @see com.iver.mdiApp.ui.MDIManager.View#getViewInfo()
524
         */
525
        public ViewInfo getViewInfo() {
526
                ViewInfo m_viewinfo=new ViewInfo(ViewInfo.MODALDIALOG);
527
                    m_viewinfo.setTitle(PluginServices.getText(this, "propiedades_vista"));
528
                return m_viewinfo;
529
        }
530

    
531
        /**
532
         * @see com.iver.mdiApp.ui.MDIManager.View#viewActivated()
533
         */
534
        public void viewActivated() {
535
        }
536
        /**
537
         * This method initializes jButton        
538
         *         
539
         * @return javax.swing.JButton        
540
         */    
541
        private JButton getJBtnChangeProj() {
542
                if (jBtnChangeProj == null) {
543
                        jBtnChangeProj = new JButton();
544
                        jBtnChangeProj.setText("...");
545
                        jBtnChangeProj.setPreferredSize(new java.awt.Dimension(34,16));
546
                }
547
                return jBtnChangeProj;
548
        }
549
        /**
550
         * This method initializes jPanel4        
551
         *         
552
         * @return javax.swing.JPanel        
553
         */    
554
        private JPanel getJPanelProj() {
555
                if (jPanelProj == null) {
556
                        jPanelProj = new JPanel();
557
                        jPanelProj.setPreferredSize(new java.awt.Dimension(330,35));
558
                        jPanelProj.add(jLblProjName, null);
559
                        jPanelProj.add(jLblProj, null);
560
                        jPanelProj.add(getJBtnChangeProj(), null);
561
                }
562
                return jPanelProj;
563
        }
564
  }  //  @jve:visual-info  decl-index=0 visual-constraint="10,10"
565

    
566

    
567
//  @jve:visual-info  decl-index=0 visual-constraint="10,10"
568