Statistics
| Revision:

root / branches / v2_0_0_prep / applications / appgvSIG / src / org / gvsig / app / project / Project.java @ 33408

History | View | Annotate | Download (4.39 KB)

1 29598 jpiera
package org.gvsig.app.project;
2 1222 fernando
3 2217 fernando
import java.awt.Color;
4
import java.beans.PropertyChangeListener;
5 31496 jjdelcerro
import java.io.File;
6
import java.io.InputStream;
7
import java.io.OutputStream;
8 2217 fernando
import java.util.Iterator;
9 8137 jcampos
import java.util.List;
10 1222 fernando
11 2217 fernando
import org.cresques.cts.IProjection;
12 31496 jjdelcerro
import org.gvsig.app.project.documents.Document;
13
import org.gvsig.app.project.documents.table.TableDocument;
14 20994 jmvivo
import org.gvsig.fmap.mapcontext.layers.FLayer;
15
import org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect;
16 31547 jjdelcerro
import org.gvsig.tools.persistence.Persistent;
17 33399 jjdelcerro
import org.gvsig.tools.persistence.exception.PersistenceException;
18 1222 fernando
19 31547 jjdelcerro
public interface Project extends Iterable<Document>,  Persistent{
20 1222 fernando
21 31496 jjdelcerro
        public void addPropertyChangeListener(PropertyChangeListener arg0);
22 7654 jaume
23 10679 jaume
        /**
24 31496 jjdelcerro
         * Return the creation date of the project
25 9237 caballero
         *
26 1222 fernando
         * @return
27
         */
28 31496 jjdelcerro
        public String getCreationDate();
29 1222 fernando
30
        /**
31 31496 jjdelcerro
         * Return the name of the project
32 9237 caballero
         *
33 1222 fernando
         * @return
34
         */
35 31496 jjdelcerro
        public String getName();
36 1222 fernando
37
        /**
38 31496 jjdelcerro
         * Set the name of he project.
39 9237 caballero
         *
40 1222 fernando
         * @param string
41
         */
42 31496 jjdelcerro
        public void setName(String name);
43 1222 fernando
44
        /**
45 31496 jjdelcerro
         * Return the comments associateds with the project
46 9237 caballero
         *
47 31496 jjdelcerro
         * @return comments
48 1222 fernando
         */
49 31496 jjdelcerro
        public String getComments();
50 1222 fernando
51
        /**
52 31496 jjdelcerro
         * Set the comments associateds with the project
53 9237 caballero
         *
54 31496 jjdelcerro
         * @param comments as string
55 1222 fernando
         */
56 31496 jjdelcerro
        public void setComments(String string);
57 1222 fernando
58 7532 caballero
        /**
59 31496 jjdelcerro
         * Retuen the modification date of the project.
60 9237 caballero
         *
61 31496 jjdelcerro
         * @return modification date as string
62 7532 caballero
         */
63 31496 jjdelcerro
        public String getModificationDate();
64 6451 jmvivo
65 1222 fernando
        /**
66 31496 jjdelcerro
         * Return the author of the project,
67 9237 caballero
         *
68 31496 jjdelcerro
         * @return author as string
69 1222 fernando
         */
70 31496 jjdelcerro
        public String getOwner();
71 1222 fernando
72
        /**
73 31496 jjdelcerro
         * Sets the author of the project
74 9237 caballero
         *
75 31496 jjdelcerro
         * @param author name as string
76 1222 fernando
         */
77 31496 jjdelcerro
        public void setOwner(String owner);
78 1222 fernando
79
        /**
80 12728 jaume
         * Obtiene el color de selecci�n que se usar� en el proyecto
81 9237 caballero
         *
82 1222 fernando
         * @return
83
         */
84 31496 jjdelcerro
        public Color getSelectionColor();
85 1222 fernando
86
        /**
87 31496 jjdelcerro
         * Sets the selecction color
88 9237 caballero
         *
89 31496 jjdelcerro
         * @param selection color as string
90 1222 fernando
         */
91 31496 jjdelcerro
        public void setSelectionColor(String selectionColor);
92 1222 fernando
93
        /**
94 31496 jjdelcerro
         * Sets the selecction color
95 9237 caballero
         *
96 31496 jjdelcerro
         * @param selection color as Color
97 1222 fernando
         */
98 31496 jjdelcerro
        public void setSelectionColor(Color selectionColor);
99 1222 fernando
100 31496 jjdelcerro
        public IProjection getProjection();
101 1222 fernando
102 31496 jjdelcerro
        public void setProjection(IProjection projection);
103 1222 fernando
104
        /**
105 31496 jjdelcerro
         * Sets the modified state of project.
106
         *
107
         * Can't set to not modified.
108 9237 caballero
         *
109 31496 jjdelcerro
         * @param modified as boolean
110 1222 fernando
         */
111 31496 jjdelcerro
        public void setModified(boolean modified);
112 1222 fernando
113 31496 jjdelcerro
        public boolean hasChanged();
114 1222 fernando
115
        /**
116 31496 jjdelcerro
         * Return a list of documents in the project.
117 9237 caballero
         *
118 31496 jjdelcerro
         * @return documents as List of IProjectDocument
119 1222 fernando
         */
120 31496 jjdelcerro
        public List<Document> getDocuments();
121 1222 fernando
122
        /**
123 31496 jjdelcerro
         * Return a list with all documents of especified type.
124 9237 caballero
         *
125 31496 jjdelcerro
         * @param type of document
126 9237 caballero
         *
127 31496 jjdelcerro
         * @return List of IProjectDocument
128 8137 jcampos
         */
129 31496 jjdelcerro
        public List<Document> getDocuments(String type);
130 8137 jcampos
131
        /**
132 31496 jjdelcerro
         * Adds a document to the project
133 9237 caballero
         *
134 31496 jjdelcerro
         * @param document as IProjectDocument
135 8137 jcampos
         */
136 31496 jjdelcerro
        public void add(Document document);
137 8137 jcampos
138
        /**
139 31496 jjdelcerro
         * Remove a document of the project
140 9237 caballero
         *
141 31496 jjdelcerro
         * @param document as IProjectDocument
142 1222 fernando
         */
143 31496 jjdelcerro
        public void remove(Document doc);
144 1222 fernando
145 31496 jjdelcerro
        public Iterator<Document> iterator();
146 1222 fernando
147 31496 jjdelcerro
        public boolean isEmpty();
148 1222 fernando
149
        /**
150 31496 jjdelcerro
         * Return the FeatureTableDocument associated with a layer
151 9237 caballero
         *
152 31496 jjdelcerro
         * @param layer
153 9237 caballero
         *
154 31496 jjdelcerro
         * @return FeatureTableDocument associated with the layer.
155 7304 caballero
         */
156 31496 jjdelcerro
        public TableDocument getTable(FLyrVect layer);
157 1222 fernando
158
        /**
159 31496 jjdelcerro
         * Return the view that contains the especified layer.
160 9237 caballero
         *
161 8137 jcampos
         * @param layer
162 9237 caballero
         *
163 31496 jjdelcerro
         * @return name of the view that contains the layer
164 9237 caballero
         *
165 31496 jjdelcerro
         * @throws RuntimeException
166 12728 jaume
         *             Si la capa que se pasa como par�metro no se encuentra en
167 8137 jcampos
         *             ninguna vista
168 1222 fernando
         */
169 31496 jjdelcerro
        public String getViewName(FLayer layer);
170 1222 fernando
171 31496 jjdelcerro
        public void addExtent(ProjectExtent arg1);
172 6888 jaume
173 31496 jjdelcerro
        public ProjectExtent removeExtent(int arg0);
174 6888 jaume
175 31496 jjdelcerro
        public ProjectExtent[] getExtents();
176 1830 fernando
177
        /**
178 8137 jcampos
         * Obtiene un documento a partir de su nombre y el nombre de registro en el
179 12728 jaume
         * pointExtension, este �ltimo se puede obtener del
180 8137 jcampos
         * Project****Factory.registerName.
181 9237 caballero
         *
182 8137 jcampos
         * @param name
183
         *            Nombre del documento
184
         * @param type
185
         *            nombre de registro en el extensionPoint
186 9237 caballero
         *
187 7529 caballero
         * @return Documento
188 1830 fernando
         */
189 31496 jjdelcerro
        public Document getDocument(String name, String type);
190 1830 fernando
191 33399 jjdelcerro
        public void saveState(File out) throws PersistenceException;
192 31496 jjdelcerro
193 33399 jjdelcerro
        public void saveState(OutputStream out) throws PersistenceException;
194 1830 fernando
195 31496 jjdelcerro
        public void loadState(InputStream in);
196 1830 fernando
197 31496 jjdelcerro
        public void loadState(File in);
198
199
        public String exportDocumentsAsText(List<Document> documents);
200
201
        public void importDocuments(String data, String doctype);
202
203
        public boolean canImportDocuments(String data, String doctype);
204
205
        public Document getActiveDocument();
206
207
}