svn-gvsig-desktop / tags / v1_1_Build_1014 / frameworks / _fwAndami / schemas / plugin-config.xsd @ 13593
History | View | Annotate | Download (11.7 KB)
1 |
<?xml version="1.0" encoding="UTF-8" ?> |
---|---|
2 |
|
3 |
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
4 |
|
5 |
<!-- |
6 |
action-tool => Button which fires the execution of this extension |
7 |
|
8 |
action-command Text to identify different action-tools inside a plugin |
9 |
text Button's text. |
10 |
name Button name (to retrive it) |
11 |
icon Tool icon |
12 |
last If true, a separator is added. |
13 |
tooltip Tooltip |
14 |
enable-text Text that describes the necessary conditions to enable a tool |
15 |
position The position inside the toolbar |
16 |
--> |
17 |
<xs:element name="action-tool"> |
18 |
<xs:complexType> |
19 |
<xs:attribute name="text" type="xs:string" use="optional" /> |
20 |
<xs:attribute name="name" type="xs:string" use="optional" /> |
21 |
<xs:attribute name="action-command" type="xs:string" use="optional" /> |
22 |
<xs:attribute name="icon" type="xs:string" use="required" /> |
23 |
<xs:attribute name="last" type="xs:boolean" use="optional" /> |
24 |
<xs:attribute name="tooltip" type="xs:string" use="optional" /> |
25 |
<xs:attribute name="enable-text" type="xs:string" use="optional" /> |
26 |
<xs:attribute name="position" type="xs:int" use="optional" /> |
27 |
</xs:complexType> |
28 |
</xs:element> |
29 |
|
30 |
<!-- |
31 |
Plugin dependencies from other plugins |
32 |
plugin-name Name of the other plugin (name of the directory.) |
33 |
Example; com.iver.cig.gvsig |
34 |
--> |
35 |
<xs:element name="depends"> |
36 |
<xs:complexType> |
37 |
<xs:attribute name="plugin-name" type="xs:string" use="required" /> |
38 |
</xs:complexType> |
39 |
</xs:element> |
40 |
|
41 |
<!-- |
42 |
Extension to Andami |
43 |
|
44 |
class-name Class that handles the extension |
45 |
menu Menus installed by the extension |
46 |
tool-bar Toolbar installed by this plugin |
47 |
priority Orden en el que se procesaran las extensiones durante la |
48 |
carga de Andami. Se inicializan primero y se instalan sus controles |
49 |
en las barras de tareas primero. La prioridad es |
50 |
mayor cuanto más grande es el valor del atributo |
51 |
--> |
52 |
|
53 |
|
54 |
<xs:element name="extension" type="extension-type"/> |
55 |
<xs:complexType name="extension-type"> |
56 |
<xs:complexContent> |
57 |
<xs:extension base="skin-extension-type"> |
58 |
<xs:attribute name="priority" type="xs:int" use="optional" /> |
59 |
<xs:attribute name="active" type="xs:boolean" use="optional" /> |
60 |
<xs:attribute name="description" type="xs:string" use="optional" /> |
61 |
<xs:attribute name="alwaysvisible" type="xs:boolean" use="optional" /> |
62 |
</xs:extension> |
63 |
</xs:complexContent> |
64 |
</xs:complexType> |
65 |
|
66 |
<!-- |
67 |
Extension's section of the plugin |
68 |
--> |
69 |
<xs:element name="extensions"> |
70 |
<xs:complexType> |
71 |
<xs:sequence> |
72 |
<xs:element ref="extension" maxOccurs="unbounded" /> |
73 |
<xs:element ref="skin-extension" minOccurs="0" maxOccurs="1" /> |
74 |
</xs:sequence> |
75 |
|
76 |
</xs:complexType> |
77 |
</xs:element> |
78 |
|
79 |
<!-- |
80 |
Main application's Icon |
81 |
|
82 |
text Title of main window. |
83 |
src path to an icon file |
84 |
--> |
85 |
<xs:element name="icon"> |
86 |
<xs:complexType> |
87 |
<xs:attribute name="text" type="xs:string" use="required" /> |
88 |
<xs:attribute name="src" type="xs:string" use="required" /> |
89 |
</xs:complexType> |
90 |
</xs:element> |
91 |
|
92 |
<!-- |
93 |
label => In this element you can put the mesages that must appear in the |
94 |
status bar |
95 |
|
96 |
size Size in pixels of the status label |
97 |
id Id assigned to this label |
98 |
--> |
99 |
<xs:element name="label"> |
100 |
<xs:complexType> |
101 |
<xs:attribute name="size" type="xs:int" use="required" /> |
102 |
<xs:attribute name="id" type="xs:NMTOKEN" use="required" /> |
103 |
</xs:complexType> |
104 |
</xs:element> |
105 |
|
106 |
<!-- |
107 |
Group of labels on the status bar. The order from up to down in xml file |
108 |
stands for the order right to left in Andami's principal frame. |
109 |
|
110 |
class-name When the active view is an instance of class-name, this |
111 |
labelSet will be shown. |
112 |
--> |
113 |
<xs:element name="label-set"> |
114 |
<xs:complexType> |
115 |
<xs:sequence> |
116 |
<xs:element ref="label" maxOccurs="unbounded" /> |
117 |
</xs:sequence> |
118 |
<xs:attribute name="class-name" type="xs:NMTOKEN" use="required" /> |
119 |
</xs:complexType> |
120 |
</xs:element> |
121 |
|
122 |
<!-- |
123 |
jars that are used by this plugin |
124 |
library-dir Relative path where the jar files are. Usually ./ or ./lib |
125 |
--> |
126 |
<xs:element name="libraries"> |
127 |
<xs:complexType> |
128 |
<xs:attribute name="library-dir" type="xs:string" use="required" /> |
129 |
</xs:complexType> |
130 |
</xs:element> |
131 |
|
132 |
<!-- |
133 |
action-command Text to identify different menus inside the same plugin |
134 |
|
135 |
key Abreviatura de teclado del menu |
136 |
icon Menu Icon |
137 |
enable-text Texto con la descripción de las condiciones que se tienen que dar |
138 |
para que se visualice la opción |
139 |
tooltip Tooltip |
140 |
mnemonic Accelerator key |
141 |
text Menu Text |
142 |
is_separator true means to add a JSeparator to the parent menu defined by text |
143 |
--> |
144 |
<xs:element name="menu"> |
145 |
<xs:complexType> |
146 |
<xs:attribute name="action-command" type="xs:string" use="optional" /> |
147 |
<xs:attribute name="key" type="xs:string" use="optional" /> |
148 |
<xs:attribute name="icon" type="xs:string" use="optional" /> |
149 |
<xs:attribute name="tooltip" type="xs:string" use="optional" /> |
150 |
<xs:attribute name="enable-text" type="xs:string" use="optional" /> |
151 |
<xs:attribute name="mnemonic" type="xs:string" use="optional" /> |
152 |
<xs:attribute name="text" type="xs:string" use="required" /> |
153 |
<xs:attribute name="position" type="xs:int" use="optional" /> |
154 |
<xs:attribute name="is_separator" type="xs:boolean" use="optional" /> |
155 |
</xs:complexType> |
156 |
</xs:element> |
157 |
|
158 |
<!-- |
159 |
XML File Root |
160 |
|
161 |
name Plugin's Name |
162 |
updateURL URL of zip-file with a new plugin's version. |
163 |
--> |
164 |
<xs:element name="plugin-config"> |
165 |
<xs:complexType> |
166 |
<xs:sequence> |
167 |
<xs:element ref="icon" minOccurs="0"/> |
168 |
<xs:element ref="depends" minOccurs="0" maxOccurs="unbounded"/> |
169 |
<xs:element ref="resourceBundle" minOccurs="0"/> |
170 |
<xs:element ref="label-set" minOccurs="0" maxOccurs="unbounded"/> |
171 |
<xs:element ref="libraries"/> |
172 |
<xs:element ref="popup-menus" minOccurs="0"/> |
173 |
<xs:element ref="extensions" /> |
174 |
</xs:sequence> |
175 |
<xs:attribute name="update-url" type="xs:string" use="optional" /> |
176 |
</xs:complexType> |
177 |
</xs:element> |
178 |
|
179 |
<!-- |
180 |
Popup menu by the plugin. The plugin must register itself as a |
181 |
popup-menu listener. |
182 |
--> |
183 |
<xs:element name="popup-menu"> |
184 |
<xs:complexType> |
185 |
<xs:sequence> |
186 |
<xs:element ref="menu" maxOccurs="unbounded" /> |
187 |
</xs:sequence> |
188 |
<xs:attribute name="name" type="xs:string" use="required" /> |
189 |
</xs:complexType> |
190 |
</xs:element> |
191 |
|
192 |
<!-- |
193 |
Section to define popup-menus |
194 |
--> |
195 |
<xs:element name="popup-menus"> |
196 |
<xs:complexType> |
197 |
<xs:sequence> |
198 |
<xs:element ref="popup-menu" maxOccurs="unbounded" /> |
199 |
</xs:sequence> |
200 |
</xs:complexType> |
201 |
</xs:element> |
202 |
|
203 |
<!-- |
204 |
Properties file with translations used by the tool. |
205 |
|
206 |
name Name of resource bundle file |
207 |
--> |
208 |
<xs:element name="resourceBundle"> |
209 |
<xs:complexType> |
210 |
<xs:attribute name="name" type="xs:NMTOKEN" use="required" /> |
211 |
</xs:complexType> |
212 |
</xs:element> |
213 |
|
214 |
<!-- |
215 |
tool button that remains pressed when it is selected. |
216 |
|
217 |
text Button's text. |
218 |
name Button name (to retrive it) |
219 |
action-command Text to identify the different action-tools inside a plugin. |
220 |
|
221 |
group Group where the selectable-tool belongs. It will be only one selectable-tool |
222 |
selected inside the group. |
223 |
is-default If true, the selectable-tool will be selected by default. |
224 |
icon Icon to use. |
225 |
last If true, after the tool it will appears a separator. |
226 |
tooltip Tooltip |
227 |
position The position inside the toolbar |
228 |
--> |
229 |
<xs:element name="selectable-tool"> |
230 |
<xs:complexType> |
231 |
<xs:attribute name="text" type="xs:string" use="optional" /> |
232 |
<xs:attribute name="name" type="xs:string" use="optional" /> |
233 |
<xs:attribute name="action-command" type="xs:string" use="optional" /> |
234 |
<xs:attribute name="is-default" type="xs:boolean" use="optional" /> |
235 |
<xs:attribute name="last" type="xs:boolean" use="optional" /> |
236 |
<xs:attribute name="icon" type="xs:string" use="required" /> |
237 |
<xs:attribute name="tooltip" type="xs:string" use="optional" /> |
238 |
<xs:attribute name="enable-text" type="xs:string" use="optional" /> |
239 |
<xs:attribute name="group" type="xs:string" use="optional" default="unico" /> |
240 |
<xs:attribute name="position" type="xs:int" use="optional" /> |
241 |
</xs:complexType> |
242 |
</xs:element> |
243 |
|
244 |
<!-- |
245 |
Extension plugin to andami |
246 |
|
247 |
class-name Class which handles the plugin |
248 |
menu Menus installed by the plugin |
249 |
tool-bar Toolbar of the plugin. If it doesn't exist, it will be created. |
250 |
combo-button combo-button to be added to the status bar |
251 |
combo-scale combo-scale to be added to the status bar |
252 |
--> |
253 |
<xs:element name="skin-extension" type="skin-extension-type"/> |
254 |
|
255 |
<xs:complexType name="skin-extension-type"> |
256 |
<xs:sequence> |
257 |
<xs:element ref="menu" minOccurs="0" maxOccurs="unbounded" /> |
258 |
<xs:element ref="tool-bar" minOccurs="0" maxOccurs="unbounded" /> |
259 |
<xs:element ref="combo-button" minOccurs="0" maxOccurs="unbounded" /> |
260 |
<xs:element ref="combo-scale" minOccurs="0" maxOccurs="unbounded" /> |
261 |
</xs:sequence> |
262 |
<xs:attribute name="class-name" type="xs:NMTOKEN" use="required" /> |
263 |
</xs:complexType> |
264 |
|
265 |
<!-- |
266 |
tool-bar => Application's main toolbar |
267 |
|
268 |
name Toolbar name. This way, other plugins can refer to this toolbar |
269 |
and add tools to this toolbar. |
270 |
position |
271 |
|
272 |
combo-button combo-button to be added to the toolbar |
273 |
commbo-scale combo-scale to be added to the toolbar |
274 |
--> |
275 |
<xs:element name="tool-bar"> |
276 |
<xs:complexType> |
277 |
<xs:sequence> |
278 |
<xs:element ref="action-tool" minOccurs="0" maxOccurs="unbounded" /> |
279 |
<xs:element ref="selectable-tool" minOccurs="0" maxOccurs="unbounded" /> |
280 |
<xs:element ref="combo-button" minOccurs="0" maxOccurs="unbounded" /> |
281 |
<xs:element ref="combo-scale" minOccurs="0" maxOccurs="unbounded" /> |
282 |
</xs:sequence> |
283 |
<xs:attribute name="name" type="xs:string" use="required" /> |
284 |
<xs:attribute name="position" type="xs:int" use="optional" /> |
285 |
</xs:complexType> |
286 |
</xs:element> |
287 |
|
288 |
<!-- |
289 |
combo-scale => A combo box with numeric values, and editable. |
290 |
|
291 |
name A name to identify the combo-scale. |
292 |
|
293 |
label The label to be displayed on the left of the combo |
294 |
|
295 |
elements A semicolon separated list of the combo box' elements |
296 |
|
297 |
value The initial selected value. If ommited, the first element is selected |
298 |
|
299 |
action-command Text to identify the different action-tools inside a plugin. |
300 |
--> |
301 |
<xs:element name="combo-scale"> |
302 |
<xs:complexType> |
303 |
<xs:attribute name="name" type="xs:string" use="required" /> |
304 |
<xs:attribute name="label" type="xs:string" use="optional" /> |
305 |
<xs:attribute name="elements" use="required" /> |
306 |
<xs:attribute name="value" use="optional" /> |
307 |
<xs:attribute name="action-command" type="xs:string" use="required" /> |
308 |
<xs:attribute name="position" use="optional" /> |
309 |
</xs:complexType> |
310 |
</xs:element> |
311 |
|
312 |
<!-- |
313 |
combo-button => A combo button (drop-down list of selectable buttons). |
314 |
|
315 |
name A name to identify the combo-button |
316 |
|
317 |
--> |
318 |
<xs:element name="combo-button"> |
319 |
<xs:complexType> |
320 |
<xs:sequence> |
321 |
<xs:element ref="combo-button-element" minOccurs="0" maxOccurs="unbounded" /> |
322 |
</xs:sequence> |
323 |
<xs:attribute name="name" type="xs:string" use="required" /> |
324 |
<xs:attribute name="position" use="optional" /> |
325 |
</xs:complexType> |
326 |
</xs:element> |
327 |
|
328 |
<!-- |
329 |
combo-button-element => An entry (icon) on the combo-button list |
330 |
|
331 |
action-command Text to identify the different action-tools inside a plugin. |
332 |
|
333 |
icon Icon to use. |
334 |
--> |
335 |
<xs:element name="combo-button-element"> |
336 |
<xs:complexType> |
337 |
<xs:attribute name="icon" type="xs:string" use="required"/> |
338 |
<xs:attribute name="action-command" type="xs:string" use="required"/> |
339 |
</xs:complexType> |
340 |
</xs:element> |
341 |
|
342 |
</xs:schema> |