Revision 4328

View differences:

trunk/extensions/extCAD/config/config.xml
9 9
			active="true">
10 10
			<menu text="Capa/comenzar_edicion" action-command="STARTEDITING"/>
11 11
		</extension>
12
		<extension class-name="com.iver.cit.gvsig.NewTheme"
13
			description="Crear un nuevo tema."
14
			active="true">
15
			<menu text="Vista/new_theme" action-command="NEWTHEME"/>
16
		</extension>
17
		
12 18
		<extension class-name="com.iver.cit.gvsig.StopEditingToShp"
13 19
			description="Extensi?n encargada de terminar la edici?n sobre la capa activa y guardarla en un shapefile."
14 20
			active="true">
trunk/extensions/extCAD/src/com/iver/cit/gvsig/NewTheme.java
1
package com.iver.cit.gvsig;
2

  
3
import javax.swing.ImageIcon;
4
import javax.swing.JFrame;
5
import javax.swing.JLabel;
6
import javax.swing.SwingUtilities;
7

  
8
import jwizardcomponent.Utilities;
9
import jwizardcomponent.example.SimpleDynamicWizardPanel;
10
import jwizardcomponent.example.SimpleLabelWizardPanel;
11
import jwizardcomponent.frame.SimpleLogoJWizardFrame;
12

  
13
import com.iver.andami.PluginServices;
14
import com.iver.andami.plugins.Extension;
15
import com.iver.cit.gvsig.gui.View;
16

  
17
/**
18
 * DOCUMENT ME!
19
 * 
20
 * @author Vicente Caballero Navarro
21
 */
22
public class NewTheme implements Extension {
23
	static ImageIcon LOGO;
24

  
25
	/**
26
	 * @see com.iver.andami.plugins.Extension#inicializar()
27
	 */
28
	public void inicializar() {
29
	}
30

  
31
	/**
32
	 * @see com.iver.andami.plugins.Extension#execute(java.lang.String)
33
	 */
34
	public void execute(String actionCommand) {
35
		com.iver.andami.ui.mdiManager.View f = PluginServices.getMDIManager()
36
				.getActiveView();
37

  
38
		if (f instanceof View) {
39
			View vista = (View) f;
40

  
41
			LOGO = new javax.swing.ImageIcon("images/package_graphics.png");
42
			// new
43
			// ImageIcon(DefaultJWizardComponents.class.getResource("images/logo.jpeg"));
44

  
45
			SimpleLogoJWizardFrame wizardFrame = new SimpleLogoJWizardFrame(
46
					LOGO);
47
			wizardFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
48

  
49
			SwingUtilities.updateComponentTreeUI(wizardFrame);
50

  
51
			wizardFrame.setTitle("Creaci?n de un nuevo Tema");
52

  
53
			wizardFrame.getWizardComponents()
54
					.addWizardPanel(
55
							new SimpleLabelWizardPanel(wizardFrame
56
									.getWizardComponents(), new JLabel(
57
									"Dynamic Test")));
58

  
59
			wizardFrame.getWizardComponents().addWizardPanel(
60
					new SimpleDynamicWizardPanel(wizardFrame
61
							.getWizardComponents()));
62

  
63
			wizardFrame.getWizardComponents().addWizardPanel(
64
					new SimpleLabelWizardPanel(wizardFrame
65
							.getWizardComponents(), new JLabel("Done!")));
66
			wizardFrame.setSize(500, 300);
67
			Utilities.centerComponentOnScreen(wizardFrame);
68
			wizardFrame.show();
69
		}
70
	}
71

  
72
	/**
73
	 * @see com.iver.andami.plugins.Extension#isEnabled()
74
	 */
75
	public boolean isEnabled() {
76
		View f = (View) PluginServices.getMDIManager().getActiveView();
77

  
78
		if (f == null) {
79
			return false;
80
		} else
81
			return true;
82
	}
83

  
84
	/**
85
	 * @see com.iver.andami.plugins.Extension#isVisible()
86
	 */
87
	public boolean isVisible() {
88
		com.iver.andami.ui.mdiManager.View f = PluginServices.getMDIManager()
89
				.getActiveView();
90

  
91
		if (f == null) {
92
			return false;
93
		}
94

  
95
		if (f.getClass() == View.class) {
96
			return true;
97
		} else {
98
			return false;
99
		}
100

  
101
	}
102
}
0 103

  
trunk/extensions/extCAD/.classpath
16 16
	<classpathentry combineaccessrules="false" kind="src" path="/appgvSIG"/>
17 17
	<classpathentry kind="lib" path="lib/gt2-postgis.jar"/>
18 18
	<classpathentry combineaccessrules="false" kind="src" path="/extJDBC"/>
19
	<classpathentry sourcepath="/JWizardComponent" kind="lib" path="lib/JWizardComponent.jar"/>
19 20
	<classpathentry kind="output" path="bin"/>
20 21
</classpath>
trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/edition/IWriter.java
1 1
package com.iver.cit.gvsig.fmap.edition;
2 2

  
3
import java.util.Properties;
4

  
3 5
import com.hardcode.driverManager.Driver;
4 6

  
5 7
public interface IWriter extends Driver{
......
14 16
	void process(IRowEdited row) throws EditionException;
15 17

  
16 18
	void postProcess() throws EditionException;
19
	
20
	public String getCapability(String capability);
21
	/**
22
	 * @param capabilities The capabilities to set.
23
	 */
24
	public void setCapabilities(Properties capabilities);
25
	
26
	public abstract boolean canWriteGeometry(int gvSIGgeometryType);
27
	public abstract boolean canWriteAttribute(int sqlType);
28
	
17 29

  
18 30
}
trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/edition/writers/shp/ShpWriter.java
6 6
import java.io.RandomAccessFile;
7 7
import java.nio.channels.FileChannel;
8 8
import java.nio.channels.WritableByteChannel;
9
import java.sql.Types;
9 10

  
10 11
import com.iver.cit.gvsig.fmap.DriverException;
12
import com.iver.cit.gvsig.fmap.core.FShape;
11 13
import com.iver.cit.gvsig.fmap.core.IFeature;
14
import com.iver.cit.gvsig.fmap.core.IGeometry;
12 15
import com.iver.cit.gvsig.fmap.drivers.LayerDefinition;
13 16
import com.iver.cit.gvsig.fmap.drivers.shp.DbaseFileHeaderNIO;
14 17
import com.iver.cit.gvsig.fmap.drivers.shp.DbaseFileWriterNIO;
......
16 19
import com.iver.cit.gvsig.fmap.drivers.shp.write.ShapefileException;
17 20
import com.iver.cit.gvsig.fmap.edition.EditionException;
18 21
import com.iver.cit.gvsig.fmap.edition.IRowEdited;
19
import com.iver.cit.gvsig.fmap.edition.IWriter;
22
import com.iver.cit.gvsig.fmap.edition.writers.AbstractWriter;
20 23
import com.iver.cit.gvsig.fmap.layers.FBitSet;
21 24
import com.iver.cit.gvsig.fmap.layers.FLyrVect;
22 25
import com.iver.cit.gvsig.fmap.layers.SelectableDataSource;
23 26

  
24
public class ShpWriter implements IWriter {
27
public class ShpWriter extends AbstractWriter {
25 28
	private String shpPath;
26 29
	private String shxPath;
27 30
	private String dbfPath;
......
216 219
	public String getName() {
217 220
		return "Shape Writer";
218 221
	}
222
	public boolean canWriteGeometry(int gvSIGgeometryType) {
223
		switch (gvSIGgeometryType)
224
		{
225
		case FShape.POINT:
226
			return true;
227
		case FShape.LINE:
228
			return true;
229
		case FShape.POLYGON:
230
			return true;
231
		case FShape.ARC:
232
			return false;
233
		case FShape.ELLIPSE:
234
			return false;			
235
		case FShape.MULTIPOINT:
236
			return true;			
237
		case FShape.TEXT:
238
			return false;						
239
		}
240
		return false;
241
	}
219 242

  
243
	public boolean canWriteAttribute(int sqlType) {
244
		switch (sqlType)
245
		{
246
		case Types.DOUBLE:
247
		case Types.FLOAT: 
248
		case Types.INTEGER:
249
		case Types.BIGINT:
250
			return true;
251
		case Types.DATE:
252
			return true;
253
		case Types.BIT:
254
		case Types.BOOLEAN:
255
			return true;			
256
		case Types.VARCHAR:
257
		case Types.CHAR: 
258
		case Types.LONGVARCHAR:
259
			return true; // TODO: Revisar esto, porque no creo que admita campos muy grandes
260

  
261
		}
262
		
263
		return false;
264
	}
265

  
220 266
}
trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/edition/writers/dbf/DbfWriter.java
5 5
import java.io.RandomAccessFile;
6 6
import java.nio.channels.FileChannel;
7 7
import java.nio.channels.WritableByteChannel;
8
import java.sql.Types;
8 9

  
9 10
import com.hardcode.driverManager.DriverLoadException;
10 11
import com.iver.cit.gvsig.fmap.DriverException;
......
15 16
import com.iver.cit.gvsig.fmap.edition.IEditableSource;
16 17
import com.iver.cit.gvsig.fmap.edition.IRowEdited;
17 18
import com.iver.cit.gvsig.fmap.edition.IWriter;
19
import com.iver.cit.gvsig.fmap.edition.writers.AbstractWriter;
18 20
import com.iver.cit.gvsig.fmap.layers.FBitSet;
19 21
import com.iver.cit.gvsig.fmap.layers.SelectableDataSource;
20 22

  
21
public class DbfWriter implements IWriter {
23
public class DbfWriter extends AbstractWriter {
22 24
	private String dbfPath;
23 25

  
24 26
	private DbaseFileWriterNIO dbfWrite;
......
139 141
		return "DBF Writer";
140 142
	}
141 143

  
144
	public boolean canWriteGeometry(int gvSIGgeometryType) {
145
		return false;
146
	}
147

  
148
	public boolean canWriteAttribute(int sqlType) {
149
		switch (sqlType)
150
		{
151
		case Types.DOUBLE:
152
		case Types.FLOAT: 
153
		case Types.INTEGER:
154
		case Types.BIGINT:
155
			return true;
156
		case Types.DATE:
157
			return true;
158
		case Types.BIT:
159
		case Types.BOOLEAN:
160
			return true;			
161
		case Types.VARCHAR:
162
		case Types.CHAR: 
163
		case Types.LONGVARCHAR:
164
			return true; // TODO: Revisar esto, porque no creo que admita campos muy grandes
165

  
166
		}
167
		
168
		return false;
169
	}
170

  
142 171
}
trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/edition/writers/gdbms/GdbmsWriter.java
1 1
package com.iver.cit.gvsig.fmap.edition.writers.gdbms;
2 2

  
3
import java.sql.Types;
4

  
3 5
import com.hardcode.gdbms.engine.data.driver.DriverException;
4 6
import com.hardcode.gdbms.engine.data.edition.DataWare;
5 7
import com.hardcode.gdbms.engine.values.Value;
8
import com.iver.cit.gvsig.fmap.core.FShape;
6 9
import com.iver.cit.gvsig.fmap.core.IRow;
7 10
import com.iver.cit.gvsig.fmap.edition.EditionException;
8 11
import com.iver.cit.gvsig.fmap.edition.IRowEdited;
9
import com.iver.cit.gvsig.fmap.edition.IWriter;
12
import com.iver.cit.gvsig.fmap.edition.writers.AbstractWriter;
10 13

  
11
public class GdbmsWriter implements IWriter {
14
public class GdbmsWriter extends AbstractWriter {
12 15
	DataWare dataWare;
13 16
	Value[] record;
14 17
	int numRecord;
......
82 85
		return "GDBMS WRITER";
83 86
	}
84 87

  
88
	public boolean canWriteGeometry(int gvSIGgeometryType) {
89
		return false;
90
	}
85 91

  
92
	public boolean canWriteAttribute(int sqlType) {
93
		switch (sqlType)
94
		{
95
		case Types.DOUBLE:
96
		case Types.FLOAT: 
97
		case Types.INTEGER:
98
		case Types.BIGINT:
99
			return true;
100
		case Types.DATE:
101
			return true;
102
		case Types.BIT:
103
		case Types.BOOLEAN:
104
			return true;			
105
		case Types.VARCHAR:
106
		case Types.CHAR: 
107
		case Types.LONGVARCHAR:
108
			return true; // TODO: Revisar esto, porque no creo que admita campos muy grandes
109

  
110
		}
111
		
112
		return false;
113
	}
114
	
115

  
86 116
}
trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/edition/writers/AbstractWriter.java
7 7
import com.iver.cit.gvsig.fmap.edition.IWriter;
8 8

  
9 9
public abstract class AbstractWriter implements IWriter {
10
	protected Properties capabilities;
10
	protected Properties capabilities = new Properties();
11 11
	
12
	public boolean supports(String capability)
12
	/**
13
	 * A developer can use this Properties for his own purposes. For example, to
14
	 * let his extension know something about one writer.
15
	 * @param capability
16
	 * @return A message describing the capability. Null if not supported.
17
	 */
18
	public String getCapability(String capability)
13 19
	{
14 20
		if (capabilities.containsKey(capability))
15
			return true;
16
		return false;
21
			return capabilities.getProperty(capability);
22
		return null;
17 23
	}
18 24

  
25
	/**
26
	 * @param capabilities The capabilities to set.
27
	 */
28
	public void setCapabilities(Properties capabilities) {
29
		this.capabilities = capabilities;
30
	}
31

  
32
	public abstract boolean canWriteGeometry(int gvSIGgeometryType);
33
	public abstract boolean canWriteAttribute(int sqlType);
34

  
19 35
}

Also available in: Unified diff