svn-gvsig-desktop / tags / v1_0_2_Build_901 / extensions / extCAD / src / com / iver / cit / gvsig / CreateNewLayer.java @ 10571
History | View | Annotate | Download (5.17 KB)
1 | 5400 | fjp | package com.iver.cit.gvsig; |
---|---|---|---|
2 | |||
3 | import java.util.ArrayList; |
||
4 | |||
5 | import javax.swing.ImageIcon; |
||
6 | |||
7 | import com.hardcode.driverManager.Driver; |
||
8 | import com.hardcode.driverManager.DriverManager; |
||
9 | import com.iver.andami.PluginServices; |
||
10 | import com.iver.andami.plugins.Extension; |
||
11 | 9059 | jmvivo | import com.iver.andami.ui.wizard.WizardAndami; |
12 | 7520 | caballero | import com.iver.cit.gvsig.fmap.MapControl; |
13 | 5400 | fjp | import com.iver.cit.gvsig.fmap.edition.ISpatialWriter; |
14 | 10044 | jmvivo | import com.iver.cit.gvsig.fmap.edition.IWriteable; |
15 | 5400 | fjp | import com.iver.cit.gvsig.fmap.layers.LayerFactory; |
16 | 7520 | caballero | import com.iver.cit.gvsig.gui.cad.CADToolAdapter; |
17 | 5400 | fjp | import com.iver.cit.gvsig.gui.cad.MyFinishAction; |
18 | import com.iver.cit.gvsig.gui.cad.panels.ChooseGeometryType; |
||
19 | import com.iver.cit.gvsig.gui.cad.panels.FileBasedPanel; |
||
20 | import com.iver.cit.gvsig.gui.cad.panels.JPanelFieldDefinition; |
||
21 | import com.iver.cit.gvsig.gui.cad.panels.PostGISpanel; |
||
22 | 8765 | jjdelcerro | import com.iver.cit.gvsig.project.documents.view.gui.View; |
23 | 5400 | fjp | |
24 | /**
|
||
25 | * DOCUMENT ME!
|
||
26 | 6604 | caballero | *
|
27 | 5400 | fjp | * @author Vicente Caballero Navarro
|
28 | */
|
||
29 | public class CreateNewLayer extends Extension { |
||
30 | static ImageIcon LOGO; |
||
31 | |||
32 | /**
|
||
33 | * @see com.iver.andami.plugins.IExtension#initialize()
|
||
34 | */
|
||
35 | public void initialize() { |
||
36 | } |
||
37 | |||
38 | /**
|
||
39 | * @see com.iver.andami.plugins.IExtension#execute(java.lang.String)
|
||
40 | */
|
||
41 | public void execute(String actionCommand) { |
||
42 | 6877 | cesar | com.iver.andami.ui.mdiManager.IWindow f = PluginServices.getMDIManager() |
43 | 6882 | cesar | .getActiveWindow(); |
44 | 5400 | fjp | |
45 | if (f instanceof View) { |
||
46 | View vista = (View) f; |
||
47 | |||
48 | LOGO = new javax.swing.ImageIcon(this.getClass().getClassLoader() |
||
49 | .getResource("images/package_graphics.png"));
|
||
50 | 7520 | caballero | CADToolAdapter cta=CADExtension.getCADToolAdapter(); |
51 | MapControl mapControl = vista.getMapControl(); |
||
52 | cta.setMapControl(mapControl); |
||
53 | 5400 | fjp | /* SimpleLogoJWizardFrame wizardFrame = new SimpleLogoJWizardFrame(
|
54 | LOGO);
|
||
55 | wizardFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||
56 | |||
57 | SwingUtilities.updateComponentTreeUI(wizardFrame);
|
||
58 | |||
59 | wizardFrame.setTitle("Creaci?n de un nuevo Tema"); */
|
||
60 | WizardAndami wizard = new WizardAndami(LOGO);
|
||
61 | |||
62 | 6604 | caballero | DriverManager writerManager = LayerFactory.getDM();
|
63 | 5400 | fjp | ArrayList spatialDrivers = new ArrayList(); |
64 | String[] writerNames = writerManager.getDriverNames(); |
||
65 | for (int i=0; i<writerNames.length; i++) |
||
66 | { |
||
67 | Driver drv = writerManager.getDriver(writerNames[i]);
|
||
68 | if (drv instanceof ISpatialWriter) |
||
69 | spatialDrivers.add(drv.getName()); |
||
70 | } |
||
71 | |||
72 | ChooseGeometryType panelChoose = new ChooseGeometryType(wizard.getWizardComponents());
|
||
73 | 6604 | caballero | JPanelFieldDefinition panelFields = new JPanelFieldDefinition(wizard.getWizardComponents());
|
74 | 5400 | fjp | |
75 | if (actionCommand.equals("SHP")) |
||
76 | { |
||
77 | wizard.getWizardComponents().addWizardPanel(panelChoose); |
||
78 | wizard.getWizardComponents().addWizardPanel(panelFields); |
||
79 | |||
80 | 10044 | jmvivo | Driver driver = writerManager.getDriver("gvSIG shp driver"); |
81 | panelFields.setWriter(((IWriteable)driver).getWriter()); |
||
82 | panelChoose.setDriver(driver); |
||
83 | 5400 | fjp | FileBasedPanel filePanel = new FileBasedPanel(wizard.getWizardComponents());
|
84 | filePanel.setFileExtension("shp");
|
||
85 | wizard.getWizardComponents().addWizardPanel(filePanel); |
||
86 | 6604 | caballero | |
87 | 5400 | fjp | wizard.getWizardComponents().setFinishAction( |
88 | new MyFinishAction(wizard.getWizardComponents(),
|
||
89 | vista, actionCommand)); |
||
90 | } |
||
91 | if (actionCommand.equals("DXF")) |
||
92 | { |
||
93 | 6604 | caballero | panelChoose.setDriver(writerManager.getDriver("gvSIG DXF Memory Driver"));
|
94 | 5400 | fjp | FileBasedPanel filePanel = new FileBasedPanel(wizard.getWizardComponents());
|
95 | filePanel.setFileExtension("dxf");
|
||
96 | wizard.getWizardComponents().addWizardPanel(filePanel); |
||
97 | wizard.getWizardComponents().getBackButton().setEnabled(false);
|
||
98 | wizard.getWizardComponents().getNextButton().setEnabled(false);
|
||
99 | 6604 | caballero | |
100 | 5400 | fjp | wizard.getWizardComponents().setFinishAction( |
101 | new MyFinishAction(wizard.getWizardComponents(),
|
||
102 | vista, actionCommand)); |
||
103 | } |
||
104 | if (actionCommand.equals("POSTGIS")) |
||
105 | 10044 | jmvivo | { |
106 | 5400 | fjp | wizard.getWizardComponents().addWizardPanel(panelChoose); |
107 | wizard.getWizardComponents().addWizardPanel(panelFields); |
||
108 | 5747 | fjp | Driver driver = writerManager.getDriver("PostGIS JDBC Driver"); |
109 | panelChoose.setDriver(driver); |
||
110 | 10044 | jmvivo | panelFields.setWriter(((IWriteable)driver).getWriter()); |
111 | 5400 | fjp | wizard.getWizardComponents().addWizardPanel( |
112 | new PostGISpanel(wizard.getWizardComponents()));
|
||
113 | 6604 | caballero | |
114 | 5400 | fjp | wizard.getWizardComponents().setFinishAction( |
115 | new MyFinishAction(wizard.getWizardComponents(),
|
||
116 | vista, actionCommand)); |
||
117 | 6604 | caballero | } |
118 | 5400 | fjp | wizard.getWizardComponents().getFinishButton().setEnabled(false);
|
119 | 8870 | jmvivo | wizard.getWindowInfo().setWidth(640);
|
120 | 6882 | cesar | wizard.getWindowInfo().setHeight(350);
|
121 | wizard.getWindowInfo().setTitle(PluginServices.getText(this,"new_layer")); |
||
122 | 5400 | fjp | // Utilities.centerComponentOnScreen(wizard);
|
123 | // wizardFrame.show();
|
||
124 | 6882 | cesar | PluginServices.getMDIManager().addWindow(wizard); |
125 | 5400 | fjp | // System.out.println("Salgo con " + panelChoose.getLayerName());
|
126 | } |
||
127 | } |
||
128 | /**
|
||
129 | * @see com.iver.andami.plugins.IExtension#isEnabled()
|
||
130 | */
|
||
131 | public boolean isEnabled() { |
||
132 | 6882 | cesar | View f = (View) PluginServices.getMDIManager().getActiveWindow(); |
133 | 5400 | fjp | |
134 | 6604 | caballero | if (f == null) |
135 | 5400 | fjp | return false; |
136 | 6604 | caballero | return true; |
137 | 5400 | fjp | } |
138 | |||
139 | /**
|
||
140 | * @see com.iver.andami.plugins.IExtension#isVisible()
|
||
141 | */
|
||
142 | public boolean isVisible() { |
||
143 | 6877 | cesar | com.iver.andami.ui.mdiManager.IWindow f = PluginServices.getMDIManager() |
144 | 6882 | cesar | .getActiveWindow(); |
145 | 5400 | fjp | |
146 | if (f == null) { |
||
147 | return false; |
||
148 | } |
||
149 | |||
150 | 6604 | caballero | if (f instanceof View) |
151 | 5400 | fjp | return true; |
152 | 6604 | caballero | return false; |
153 | 5400 | fjp | } |
154 | } |