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