Statistics
| Revision:

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

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