Statistics
| Revision:

root / trunk / applications / appgvSIG / src / com / iver / cit / gvsig / DEMO / SingleView.java @ 1123

History | View | Annotate | Download (26 KB)

1
/*
2
 * Created on 19-may-2003
3
 *
4
 * To change the template for this generated file go to
5
 * Window>Preferences>Java>Code Generation>Code and Comments
6
 */
7
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
8
 *
9
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
10
 *
11
 * This program is free software; you can redistribute it and/or
12
 * modify it under the terms of the GNU General Public License
13
 * as published by the Free Software Foundation; either version 2
14
 * of the License, or (at your option) any later version.
15
 *
16
 * This program is distributed in the hope that it will be useful,
17
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19
 * GNU General Public License for more details.
20
 *
21
 * You should have received a copy of the GNU General Public License
22
 * along with this program; if not, write to the Free Software
23
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
24
 *
25
 * For more information, contact:
26
 *
27
 *  Generalitat Valenciana
28
 *   Conselleria d'Infraestructures i Transport
29
 *   Av. Blasco Ib??ez, 50
30
 *   46010 VALENCIA
31
 *   SPAIN
32
 *
33
 *      +34 963862235
34
 *   gvsig@gva.es
35
 *      www.gvsig.gva.es
36
 *
37
 *    or
38
 *
39
 *   IVER T.I. S.A
40
 *   Salamanca 50
41
 *   46005 Valencia
42
 *   Spain
43
 *
44
 *   +34 963163400
45
 *   dac@iver.es
46
 */
47
package com.iver.cit.gvsig.DEMO;
48

    
49
import java.awt.BorderLayout;
50
import java.awt.Color;
51
import java.awt.Dimension;
52
import java.awt.Point;
53
import java.awt.event.KeyAdapter;
54
import java.awt.event.KeyEvent;
55
import java.awt.event.MouseAdapter;
56
import java.awt.event.MouseEvent;
57
import java.awt.event.WindowEvent;
58
import java.awt.event.WindowListener;
59
import java.awt.geom.Point2D;
60
import java.awt.image.ImageObserver;
61
import java.util.Locale;
62

    
63
import javax.swing.ButtonGroup;
64
import javax.swing.JButton;
65
import javax.swing.JDialog;
66
import javax.swing.JFrame;
67
import javax.swing.JMenu;
68
import javax.swing.JMenuItem;
69
import javax.swing.JPanel;
70
import javax.swing.JScrollPane;
71
import javax.swing.JSplitPane;
72
import javax.swing.JTextArea;
73
import javax.swing.JTextField;
74
import javax.swing.JToggleButton;
75
import javax.swing.JToolBar;
76
import javax.swing.UIManager;
77

    
78
import org.apache.log4j.Logger;
79
import org.apache.log4j.PropertyConfigurator;
80

    
81
import com.iver.andami.messages.Messages;
82
import com.iver.cit.gvsig.fmap.NewMapControl;
83
import com.iver.cit.gvsig.fmap.ViewPort;
84
import com.iver.cit.gvsig.fmap.layers.FLayer;
85
import com.iver.cit.gvsig.fmap.layers.LayerFactory;
86
import com.iver.cit.gvsig.fmap.tools.PanListenerImpl;
87
import com.iver.cit.gvsig.fmap.tools.RectangleSelectionListener;
88
import com.iver.cit.gvsig.fmap.tools.ZoomInListenerImpl;
89
import com.iver.cit.gvsig.fmap.tools.ZoomOutListenerImpl;
90
import com.iver.cit.gvsig.fmap.tools.Behavior.MoveMapTool;
91
import com.iver.cit.gvsig.fmap.tools.Behavior.PointMapTool;
92
import com.iver.cit.gvsig.fmap.tools.Behavior.RectangleMapTool;
93
import com.iver.cit.gvsig.gui.IView;
94
import com.iver.cit.gvsig.gui.MapOverview;
95
import com.iver.cit.gvsig.gui.Dialogs.FInfoDialog;
96
import com.iver.cit.gvsig.gui.Panels.FPanelAbout;
97
import com.iver.cit.gvsig.gui.toc.TOC;
98
import com.iver.cit.gvsig.gui.toolListeners.InfoListener;
99
import com.iver.cit.gvsig.gui.toolListeners.StatusBarListener;
100

    
101

    
102
/* import java.awt.GridBagLayout;
103
import java.awt.GridBagConstraints;
104
import java.awt.Insets;
105
import java.awt.Dimension; */
106

    
107
/**
108
 * @author Administrador
109
 *
110
 * To change the template for this generated type comment go to
111
 * Window>Preferences>Java>Code Generation>Code and Comments
112
 */
113
public class SingleView extends JFrame implements IView, WindowListener {
114
        public static ImageObserver m_ImageObserver = null;
115
        private static Logger logger = Logger.getLogger(SingleView.class.getName());
116
        
117
        public JPanel panelvista = null;
118

    
119
        //public FLegend jLeyenda;
120
        //private TOC vTOC;
121
        public NewMapControl m_MapControl;
122
        public FInfoDialog m_dlgInfo;
123
//         public FProjection m_Projection;
124
        private JScrollPane jscrollTOC;
125
        private TOC m_TOC;
126
        private MapOverview m_MapLoc;
127
        private String m_Name = null;
128
        // private com.iver.cit.opensig.project.View modelo;
129
        
130
    private javax.swing.JMenuItem aboutMenuItem;
131
    private javax.swing.JButton btn_FullExtent;
132
    private javax.swing.JMenuItem contentsMenuItem;
133
    private javax.swing.JMenuItem copyMenuItem;
134
    private javax.swing.JMenuItem cutMenuItem;
135
    private javax.swing.JMenuItem deleteMenuItem;
136
    private javax.swing.JMenu editMenu;
137
    private javax.swing.JMenuItem exitMenuItem;
138
    private javax.swing.JMenu fileMenu;
139
    private javax.swing.JMenu helpMenu;
140
    private javax.swing.JLabel jLabel1;
141
    private javax.swing.JPanel jPanel1;
142
    private javax.swing.JTextField jTextField1;
143
    private javax.swing.JToolBar jToolBar1;
144
    public Export jExport;
145
    private ComandosListener m_acL;
146
    
147
    private javax.swing.JMenuBar menuBar;
148
    
149
    private class myKeyAdapter extends KeyAdapter {
150
                    /* (non-Javadoc)
151
                 * @see java.awt.event.KeyListener#keyReleased(java.awt.event.KeyEvent)
152
                 */
153
                public void keyReleased(KeyEvent arg0) {
154
                        System.out.println("Hola colega");
155
                        super.keyReleased(arg0);
156
                }
157

    
158
        }
159
        private myKeyAdapter m_OrejaTeclado = new myKeyAdapter();
160
    /** Button group for pan, zoom, and all exclusive tools */
161
    private ButtonGroup myButtonGroup = new ButtonGroup();
162
    private javax.swing.JMenuItem openMenuItem;
163
    private javax.swing.JMenuItem exportMenuItem;
164
    private javax.swing.JMenuItem pasteMenuItem;
165
    private javax.swing.JMenuItem saveAsMenuItem;
166
    private javax.swing.JMenuItem saveMenuItem;
167
    private javax.swing.JMenu TemaMenu;
168
    private javax.swing.JMenuItem verTabla;
169
    private javax.swing.JMenu VistaMenu;
170
    private JTextArea m_txt;
171
    private JTextField m_txtCoords;
172
    
173

    
174
    SingleView() {
175
            m_ImageObserver = this;
176
        setSize(640, 480);
177
        initComponents();
178

    
179
        // setExtendedState(MAXIMIZED_BOTH);
180
        addWindowListener((WindowListener) this);
181
        // m_Map.addMouseListener(this);
182
        m_dlgInfo = new FInfoDialog();
183
        // addMouseListener(this);
184
        // addKeyListener((KeyListener) this);
185
        addKeyListener(m_OrejaTeclado);
186
        
187
                LayerFactory.setDriversPath("D:/java/eclipse30/eclipse/workspace/Andami/gvSIG/extensiones/com.iver.cit.gvsig/drivers");        
188
        // m_MapControl.addTool(MapControl.ZOOM_MAS);
189
        // m_MapControl.addCoordsListener(this);
190
        
191
    }
192

    
193

    
194
        public NewMapControl getMapControl()
195
        {
196
                return m_MapControl;
197
        }
198
        public NewMapControl getMapOverview()
199
        {
200
                return m_MapLoc;
201
        } 
202
        
203
    public static void main(String[] args) {
204
                try {
205
                        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());                        
206
                } catch (Exception e) {
207
                        System.out.println(UIManager.getCrossPlatformLookAndFeelClassName()); 
208
                } 
209
                PropertyConfigurator.configure(SingleView.class.getClassLoader()
210
                                                                                                                 .getResource("log4j.properties"));
211

    
212
                Locale loc = null;
213

    
214
                if (args.length == 0) {
215
                        loc = Locale.getDefault();
216
                } else {
217
                        loc = new Locale(args[0]);
218
                }
219

    
220
                Messages.init(loc);
221

    
222

    
223
        SingleView testApp = new SingleView();
224

    
225
        // testApp.getContentPane().add(elMapa);
226
        testApp.show();
227
        
228
    }
229

    
230
    /**
231
     * Add the tools to the tools panel.
232
     */
233
    private void addTools(JToolBar inPanel, NewMapControl inDisplay) {
234
        /* inPanel.setLayout(new GridBagLayout());
235
        GridBagConstraints c = new GridBagConstraints();
236
        c.fill = c.HORIZONTAL;
237
        c.insets = new Insets(1,1,1,1);
238
        c.weightx = 1;
239

240
        // set the width of the panel.
241
        inPanel.setPreferredSize(new Dimension(40,40));
242
        inPanel.setMinimumSize(new Dimension(40,10));
243

244

245

246
        c.gridy = 0;
247
        c.gridx = 0; */
248
            
249
            inPanel.setLayout(new BorderLayout());
250
            
251
            JToolBar tempPanel = new JToolBar();
252
            
253
        btn_FullExtent.setIcon(new javax.swing.ImageIcon(
254
                "images/MapContents.png"));
255
        btn_FullExtent.setActionCommand("ZOOM_TODO");
256
        btn_FullExtent.addActionListener(m_acL);
257
        tempPanel.add(btn_FullExtent);
258
        
259
        JButton  btnZoomPrevio = new JButton();
260
        btnZoomPrevio.setIcon(new javax.swing.ImageIcon(
261
                        "images/ZoomPrevio.png"));
262
        btnZoomPrevio.setActionCommand("ZOOM_PREVIO");
263
        btnZoomPrevio.addActionListener(m_acL);
264
        tempPanel.add(btnZoomPrevio);
265
        
266
        tempPanel.add(new JToolBar.Separator(new java.awt.Dimension(16,16)));
267
                // inPanel.add(new JToolBar.Separator());
268

    
269
        // the select tool not that it does anything
270
        // the zoom in tool
271
        // c.gridy++;
272
        // JRadioButton tempGISButton = new JRadioButton("Zoom In", ? new ZoomInCommand(this));
273
        // JRadioButton tempGISButton = new JRadioButton("Zoom In");
274
        JToggleButton tempGISButton = new JToggleButton("Zoom por rect?ngulo");
275
        tempGISButton.setBorder(null);
276
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/zoomIn.png"));
277

    
278
        // tempGISButton.setSelectedIcon(new javax.swing.ImageIcon("images/zoomPrev.gif"));
279
        // tempGISButton.setRolloverIcon(tempGISButton.getSelectedIcon());
280
        tempGISButton.setRolloverEnabled(true);
281
        tempGISButton.setToolTipText(tempGISButton.getText());
282
        tempGISButton.setText("");
283
        tempGISButton.setSelected(true);
284
        tempGISButton.setActionCommand("ZOOM_MAS");
285
        tempGISButton.addActionListener(m_acL);
286

    
287
            ZoomInListenerImpl zili = new ZoomInListenerImpl(m_MapControl);
288
            m_MapControl.setCursor(zili.getCursor());
289
            m_MapControl.addMapTool("zoomrect",
290
                    new RectangleMapTool(zili));
291
            m_MapControl.setTool("zoomrect");
292

    
293
        myButtonGroup.add(tempGISButton);
294

    
295
        // inPanel.add(tempGISButton, c);
296
        tempPanel.add(tempGISButton);
297

    
298
        // the zoom out tool
299
        // c.gridy++;
300
        tempGISButton = new JToggleButton("Alejar"); //, new ZoomOutCommand(this));
301
        tempGISButton.setBorder(null);
302
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/zoomOut.png"));
303
        // Zoom out (pinchas y el mapa se centra y te muestra m?s).
304
        // No es dibujando un rect?ngulo, es solo pinchando.
305

    
306
        ZoomOutListenerImpl zoli = new ZoomOutListenerImpl(m_MapControl);
307
        m_MapControl.addMapTool("zoomout", new PointMapTool(zoli));
308
        m_MapControl.setCursor(zoli.getCursor());
309
        
310
        // pan
311

    
312
        PanListenerImpl pli = new PanListenerImpl(m_MapControl);
313
        m_MapControl.setCursor(pli.getCursor());
314
        m_MapControl.addMapTool("pan", new MoveMapTool(pli));
315
        
316
        // info
317
        //Info por punto
318
        InfoListener il = new InfoListener(m_MapControl);
319
        //il.setModel(modelo);
320
        m_MapControl.addMapTool("info", new PointMapTool(il));
321
        
322
        //Selecci?n por rect?ngulo
323
        RectangleSelectionListener rsl = new RectangleSelectionListener(m_MapControl);
324
        m_MapControl.addMapTool("rectSelection",
325
                new RectangleMapTool(rsl));        
326
        
327
        // tempGISButton.setSelectedIcon(getIcon("ZoomOutActive.png"));
328
        // tempGISButton.setRolloverIcon(tempGISButton.getSelectedIcon());
329
        // tempGISButton.setRolloverEnabled(true);
330
        tempGISButton.setToolTipText(tempGISButton.getText());
331
        tempGISButton.setText("");
332
        tempGISButton.setActionCommand("ZOOM_MENOS");
333
        tempGISButton.addActionListener(m_acL);
334

    
335
        myButtonGroup.add(tempGISButton);
336

    
337
        // inPanel.add(tempGISButton, c);
338
        tempPanel.add(tempGISButton);
339

    
340
        // The Pan Tool
341
        // c.gridy++;
342
        tempGISButton = new JToggleButton("Pan Around"); // , new PanCommand(this));
343
        tempGISButton.setBorder(null);
344
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/pan.png")); // getIcon("PanInactive.png"));
345

    
346
        tempGISButton.setToolTipText(tempGISButton.getText());
347
        tempGISButton.setText("");
348
        tempGISButton.setActionCommand("PAN");
349
        tempGISButton.addActionListener(m_acL);
350

    
351
        myButtonGroup.add(tempGISButton);
352
        tempPanel.add(tempGISButton);
353

    
354
        tempGISButton = new JToggleButton("Info"); // , new PanCommand(this));
355
        tempGISButton.setBorder(null);
356
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/identify.png")); // getIcon("PanInactive.png"));
357
        tempGISButton.setToolTipText(tempGISButton.getText());
358
        tempGISButton.setText("");
359
        tempGISButton.setActionCommand("INFO");
360
        tempGISButton.addActionListener(m_acL);
361

    
362
        myButtonGroup.add(tempGISButton);
363
        tempPanel.add(tempGISButton);
364

    
365
        tempGISButton = new JToggleButton("Selecci?n por rect?ngulo"); 
366
        tempGISButton.setBorder(null);
367
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/Select.png")); 
368
        tempGISButton.setToolTipText(tempGISButton.getText());
369
        tempGISButton.setText("");
370
        tempGISButton.setActionCommand("SELRECT");
371
        tempGISButton.addActionListener(m_acL);
372

    
373
        myButtonGroup.add(tempGISButton);
374
        tempPanel.add(tempGISButton);
375
        
376
        
377
        tempGISButton = new JToggleButton("Medir distancia"); // , new PanCommand(this));
378
        tempGISButton.setBorder(null);
379
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/medir.png")); // getIcon("PanInactive.png"));
380
        tempGISButton.setToolTipText(tempGISButton.getText());
381
        tempGISButton.setText("");
382
        tempGISButton.setActionCommand("MEDICION");
383
        tempGISButton.addActionListener(m_acL);
384

    
385
        myButtonGroup.add(tempGISButton);
386
        tempPanel.add(tempGISButton);
387
        
388
        tempGISButton = new JToggleButton("Medir area"); // , new PanCommand(this));
389
        tempGISButton.setBorder(null);
390
        tempGISButton.setIcon(new javax.swing.ImageIcon("images/poligono16.png")); // getIcon("PanInactive.png"));
391
        tempGISButton.setToolTipText(tempGISButton.getText());
392
        tempGISButton.setText("");
393
        tempGISButton.setActionCommand("MEDIRAREA");
394
        tempGISButton.addActionListener(m_acL);
395

    
396
        myButtonGroup.add(tempGISButton);
397
        tempPanel.add(tempGISButton);
398
        
399
        
400

    
401
        
402
        inPanel.setRollover(true);
403

    
404
        /* tempMenuButton = new GISMenuButton(tempEditNodesCommand, tempRadioButton);
405
        tempEditNodesCommand.setButton(tempMenuButton);
406
        tempMenuButton.initPanel();
407
        inPanel.add(tempMenuButton, c); */
408

    
409
        // Add a panel for the additional buttons.
410
        m_txtCoords = new JTextField();
411
        m_txtCoords.setPreferredSize(new Dimension(300,20));
412
        
413
        inPanel.add(tempPanel,BorderLayout.WEST);
414
        inPanel.add(m_txtCoords, BorderLayout.EAST);
415

    
416
        /* c.gridy++;
417
        c.anchor = c.NORTH;
418
        c.weighty = 1;
419
        c.fill = c.HORIZONTAL;
420
        inPanel.add(new JPanel(), c); */
421

    
422
        //        inPanel.add(myAuxillaryButtonPanel, c);
423
        m_MapControl.setTool("zoomrect");
424
    }
425

    
426
    /** Exit the Application */
427
    private void exitForm(java.awt.event.WindowEvent evt) { //GEN-FIRST:event_exitForm
428
        System.exit(0);
429
    }
430

    
431
    //GEN-LAST:event_exitForm
432
    private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt) { //GEN-FIRST:event_exitMenuItemActionPerformed
433
        System.exit(0);
434
    }
435
    
436
        private void info(Point pScreen){
437
                ViewPort vp = m_MapControl.getMapContext().getViewPort();
438
                Point2D pReal = vp.toMapPoint(pScreen);
439

    
440
                FLayer[] sel = m_MapControl.getMapContext().getLayers().getActives();
441

    
442
                // Denro de queryByPoint tenemos que separar los registros que vienen asociados a una 
443
                // capa o a otra. Supongo que lo correcto ser?a que montaramos un XML y usar el visor
444
                // de XML que ha empezado Fernando.
445
                // String strResul = m_MapControl.queryByPoint(pScreen,m_MapControl.toMapDistance(3),"");
446

    
447
                JDialog dlg = new JDialog();
448
                m_dlgInfo.setPreferredSize(m_dlgInfo.getSize());
449
                m_dlgInfo.clearAll();
450
                                
451
                // if (strResul == "" ) return;
452
                String strResul;
453

    
454
                for (int i=0; i< sel.length; i++)
455
                {
456
                        FLayer laCapa = sel[i];
457

    
458
                        /* if (laCapa instanceof FLyrWMS)
459
                        {
460
                                strResul = laCapa.QueryByPoint(pScreen,m_MapControl.toMapDistance(3),"" );
461
                                // System.out.println("LWS: strResul="+strResul);
462
                                m_dlgInfo.addLayerInfo(laCapa.getName(), strResul);
463
                        }
464
                        else
465
                        {
466
                                strResul = laCapa.QueryByPoint(pReal,m_MapControl.toMapDistance(3),"" );
467
                                
468
                        String[] arraySplit = null;
469
                        arraySplit = strResul.split("\n");
470

471
                                if (arraySplit.length > 1)
472
                                {
473
                                        // System.out.println("LWS: strResul="+strResul);
474
                                        String descrip = "";
475
                                        if (laCapa.getParentLayer() != null)
476
                                                descrip = laCapa.getParentLayer().getName() + "_";
477
                                        m_dlgInfo.addLayerInfo(descrip + laCapa.getName(), strResul);
478
                                }
479
                                
480
                        } */                        
481
                }
482
                m_dlgInfo.refresh();
483
                dlg.getContentPane().add(m_dlgInfo);
484
                dlg.setModal(true);                        
485
                dlg.pack();
486
                dlg.show();
487

    
488
        }
489
 
490
    //GEN-LAST:event_exitMenuItemActionPerformed
491
    private void initComponents() { //GEN-BEGIN:initComponents
492
        jToolBar1 = new javax.swing.JToolBar();
493
        btn_FullExtent = new javax.swing.JButton();
494
        jLabel1 = new javax.swing.JLabel();
495
        jTextField1 = new javax.swing.JTextField();
496
        
497
        jPanel1 = new javax.swing.JPanel();
498
        menuBar = new javax.swing.JMenuBar();
499
        fileMenu = new javax.swing.JMenu();
500
        openMenuItem = new javax.swing.JMenuItem();
501
        saveMenuItem = new javax.swing.JMenuItem();
502
        saveAsMenuItem = new javax.swing.JMenuItem();
503
        exportMenuItem = new javax.swing.JMenuItem();
504
        exitMenuItem = new javax.swing.JMenuItem();
505
        editMenu = new javax.swing.JMenu();
506
        cutMenuItem = new javax.swing.JMenuItem();
507
        copyMenuItem = new javax.swing.JMenuItem();
508
        pasteMenuItem = new javax.swing.JMenuItem();
509
        deleteMenuItem = new javax.swing.JMenuItem();
510
        helpMenu = new javax.swing.JMenu();
511
        contentsMenuItem = new javax.swing.JMenuItem();
512
        aboutMenuItem = new javax.swing.JMenuItem();
513

    
514
        VistaMenu = new JMenu();
515
        TemaMenu = new JMenu();
516
        verTabla = new JMenuItem();
517
        
518
        m_txt = new JTextArea(0,0);
519
                // jToolBar1.add(m_txt);
520
                // m_txt.addKeyListener(m_OrejaTeclado);        
521

    
522
        addWindowListener(new java.awt.event.WindowAdapter() {
523
                public void windowClosing(java.awt.event.WindowEvent evt) {
524
                    exitForm(evt);
525
                }
526
            });
527

    
528
        jLabel1.setText("Escala:");
529

    
530
        // jToolBar1.add(jLabel1);
531
        jTextField1.setText("jTextField1");
532

    
533
        // jToolBar1.add(jTextField1);
534

    
535
                m_MapControl = new NewMapControl();
536

    
537
                m_MapControl.getMapContext().getViewPort()
538
                                .setBackColor(new Color(220,220,255));
539
                m_MapControl.addMouseListener(new MouseAdapter() {
540
                                public void mousePressed(MouseEvent e) {
541
                                        /* if (m_MapControl.getTool() == MapControl.INFO) {
542
                                                info(e.getPoint());
543
                                        } */
544
                                }
545
                        });
546
                
547
                m_TOC = new TOC();
548
                m_TOC.setMapContext(m_MapControl.getMapContext());
549
                m_MapLoc = new MapOverview(m_MapControl);
550
                m_MapLoc.setPreferredSize(new Dimension(150,200));
551
                JSplitPane tempMainSplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
552
                tempMainSplit.setPreferredSize(new Dimension(500, 300));
553
                // jscrollTOC = new JScrollPane(m_TOC);
554

    
555
                //jscrollTOC.setPreferredSize(new Dimension(200, 1000));
556
                // jscrollTOC.setSize(300, 600);
557

    
558
                //jscrollTOC.setAutoscrolls(true);
559
                //jscrollTOC.setVisible(true);
560
                // tempMainSplit.setLeftComponent(jscrollTOC);
561
                
562
                // Ponemos el localizador
563
                JSplitPane tempSplitToc = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
564
                
565
                tempSplitToc.setTopComponent(m_TOC);
566
                tempSplitToc.setBottomComponent(m_MapLoc);
567
                tempSplitToc.setResizeWeight(0.7);
568
                tempMainSplit.setLeftComponent(tempSplitToc);
569

    
570
                m_TOC.setVisible(true);
571
                
572
                tempMainSplit.setRightComponent(m_MapControl);
573

    
574
                this.getContentPane().setLayout(new BorderLayout());
575

    
576
                getContentPane().add(jToolBar1, java.awt.BorderLayout.NORTH);
577

    
578
                // getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
579

    
580

    
581
                this.getContentPane().add(tempMainSplit, BorderLayout.CENTER);
582

    
583

    
584
        m_acL = new ComandosListener(m_MapControl, this);
585

    
586
        fileMenu.setText("Fichero");
587
        openMenuItem.setText("A?adir capa...");
588
        openMenuItem.setActionCommand("ADD_LAYER");
589
        openMenuItem.addActionListener(m_acL);
590
        fileMenu.add(openMenuItem);
591

    
592
                JMenuItem abrirEnMemoria = new JMenuItem(); 
593
                abrirEnMemoria.setText("A?adir capa en memoria...");
594
                abrirEnMemoria.setActionCommand("ADD_MEMORY_LAYER");
595
                abrirEnMemoria.addActionListener(m_acL);
596
                fileMenu.add(abrirEnMemoria);
597

    
598
//                a submenu
599
                JMenu abrirGT2 = new JMenu();
600
                abrirGT2.setText("Abrir capa GT2");
601
                
602
                JMenuItem abrirGT2_Shp = new JMenuItem(); 
603
                abrirGT2_Shp.setText("Shp");
604
                abrirGT2_Shp.setActionCommand("ADD_GT2_SHP");
605
                abrirGT2_Shp.addActionListener(m_acL);                
606
                abrirGT2.add(abrirGT2_Shp);
607
                
608
                JMenuItem abrirGT2_PostGIS = new JMenuItem(); 
609
                abrirGT2_PostGIS.setText("PostGIS");
610
                abrirGT2_PostGIS.setActionCommand("ADD_GT2_POSTGIS");
611
                abrirGT2_PostGIS.addActionListener(m_acL);                
612
                abrirGT2.add(abrirGT2_PostGIS);
613

    
614
                JMenuItem abrirGT2_ArcSDE = new JMenuItem(); 
615
                abrirGT2_ArcSDE.setText("ArcSDE");
616
                abrirGT2_ArcSDE.setActionCommand("ADD_GT2_ARCSDE");
617
                abrirGT2_ArcSDE.addActionListener(m_acL);                
618
                abrirGT2.add(abrirGT2_ArcSDE);
619
                
620
                fileMenu.add(abrirGT2);
621

    
622
                fileMenu.addSeparator();
623
        
624
                JMenuItem prueba = new JMenuItem(); 
625
                prueba.setText("Probar breaks");
626
                prueba.setActionCommand("PRUEBA");
627
                prueba.addActionListener(m_acL);
628
                fileMenu.add(prueba);
629

    
630
        /* saveMenuItem.setText("Guardar");
631
         fileMenu.add(saveMenuItem);
632
         saveAsMenuItem.setText("Guardar como ...");
633
         fileMenu.add(saveAsMenuItem);
634
         */
635
        exportMenuItem.setText("Exportar vista a...");
636
        exportMenuItem.setActionCommand("EXPORT");
637
        exportMenuItem.addActionListener(m_acL);
638
        fileMenu.add(exportMenuItem);
639

    
640
        exitMenuItem.setText("Salir");
641
        exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
642
                public void actionPerformed(java.awt.event.ActionEvent evt) {
643
                    exitMenuItemActionPerformed(evt);
644
                }
645
            });
646

    
647
        fileMenu.add(exitMenuItem);
648

    
649
        menuBar.add(fileMenu);
650

    
651
        /*editMenu.setText("Editar");
652
         cutMenuItem.setText("Cortar");
653
         editMenu.add(cutMenuItem);
654
         copyMenuItem.setText("Copiar");
655
         editMenu.add(copyMenuItem);
656
         pasteMenuItem.setText("Pegar");
657
         editMenu.add(pasteMenuItem);
658
         deleteMenuItem.setText("Borrar");
659
         editMenu.add(deleteMenuItem);
660
         menuBar.add(editMenu);
661
        */
662
        VistaMenu.setText("Vista");
663
        
664
                JMenuItem mnuOpenLocator = new JMenuItem(); 
665
                mnuOpenLocator.setText("Abrir localizador");
666
                mnuOpenLocator.setActionCommand("OPEN_LOCATOR");
667
                mnuOpenLocator.addActionListener(m_acL);
668
                VistaMenu.add(mnuOpenLocator);
669
        
670
        menuBar.add(VistaMenu);
671

    
672
        TemaMenu.setText("Tema");
673
        verTabla.setText("Ver tabla del tema activo...");
674
        verTabla.setActionCommand("VIEW_TABLE");
675
        verTabla.addActionListener(m_acL);
676

    
677
        TemaMenu.add(verTabla);
678
        menuBar.add(TemaMenu);
679

    
680
        helpMenu.setText("Ayuda");
681
              contentsMenuItem.setText("Temas de Ayuda");
682
        helpMenu.add(contentsMenuItem);
683

    
684
        aboutMenuItem.setText("Acerca de...");
685
        aboutMenuItem.addActionListener(new java.awt.event.ActionListener() {
686
            public void actionPerformed(java.awt.event.ActionEvent evt) {
687
                JDialog dlg = new JDialog();
688
                FPanelAbout panelAbout = new FPanelAbout();
689
                panelAbout.setPreferredSize(panelAbout.getSize());                
690
                dlg.getContentPane().add(panelAbout);
691
                dlg.pack();
692
                dlg.setResizable(false);
693
                dlg.setModal(true);
694
                dlg.show();
695
            }
696
        });
697
        
698
        helpMenu.add(aboutMenuItem);
699
        menuBar.add(helpMenu);
700
        
701
        setJMenuBar(menuBar);
702

    
703

    
704
                // m_TOC.refresh();
705

    
706

    
707
        addTools(jToolBar1, m_MapControl);
708
    }
709

    
710
    //GEN-END:initComponents
711

    
712
    /* (non-Javadoc)
713
     * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
714
     */
715
    /* public void mouseClicked(MouseEvent E) {
716
        if (m_Map.m_Estado == FMap.INFO) {
717
            if (m_Map.m_Layers.size() == 0) {
718
                return;
719
            }
720

721
            Point pScreen = E.getPoint();
722
            Point2D.Double pReal = m_Map.ToMapPoint(pScreen);
723
            FLyrVect laCapa = m_TOC.getFirstLayerSelected(); // m_Mapa.GetLayer(0);
724
            String strResul = laCapa.QueryByPoint(pReal, 10);
725

726
            // System.out.println(pScreen);
727
            // System.out.println(pReal);
728
            System.out.println("strResul = " + strResul);
729

730
            // DlgInfo dlgInfo = new DlgInfo(this, true);
731
            m_dlgInfo.clearAll();
732
            m_dlgInfo.addLayerInfo(laCapa.m_LayerName, strResul);
733
            m_dlgInfo.refresh();
734
            m_dlgInfo.show();
735
        }
736
    } */
737
    
738
        public void repaintMap() {
739
                m_MapControl.drawMap();
740
                repaint();
741
                // m_Map.refresh();
742
        }
743

    
744

    
745

    
746
    public void windowActivated(WindowEvent e) {
747
    }
748

    
749
    public void windowClosed(WindowEvent e) {
750
        System.out.println("Salgo");
751
    }
752

    
753
    /**
754
     * class for handling messages from the window expecially the window closing event to end
755
     * the process when the window closes.
756
     */
757
    public void windowClosing(WindowEvent e) {
758
        System.out.println("Salgo");
759
        System.exit(0);
760
    }
761

    
762
    public void windowDeactivated(WindowEvent e) {
763
    }
764

    
765
    public void windowDeiconified(WindowEvent e) {
766
    }
767

    
768
    public void windowIconified(WindowEvent e) {
769
    }
770

    
771
    public void windowOpened(WindowEvent e) {
772
    }
773

    
774

    
775
        /* (non-Javadoc)
776
         * @see com.iver.cit.opensig.gui.IView#getTOC()
777
         */
778
        /*public IToc getTOC() {
779
                return m_TOC;
780
        } */
781

    
782
        public void showCoords(double x, double y)
783
        {
784
                m_txtCoords.setText("x= " + x + " y= " + y);
785
        }
786

    
787
        /* (non-Javadoc)
788
         * @see com.iver.cit.opensig.gui.IView#getViewName()
789
         */
790
        public String getViewName() {                
791
                return "Ejemplo de Visor sencillo";
792
        }
793

    
794

    
795
        /* (non-Javadoc)
796
         * @see com.iver.cit.opensig.gui.IView#setViewName(java.lang.String)
797
         */
798
        public void setViewName(String viewName) {
799
                m_Name = viewName;
800
                
801
        }
802

    
803

    
804
        /* (non-Javadoc)
805
         * @see com.iver.cit.gvsig.fmap.ICoordsListener#coordsChanged(double, double)
806
         */
807
        public void coordsChanged(double x, double y) {
808
                showCoords(x, y);
809
                
810
        }
811

    
812

    
813

    
814
        public TOC getTOC() {
815
                return m_TOC;
816
        }
817
}