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