2
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
4
Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
7
The contents of this file are subject to the terms of either the GNU
8
General Public License Version 2 only ("GPL") or the Common
9
Development and Distribution License("CDDL") (collectively, the
10
"License"). You may not use this file except in compliance with the
11
License. You can obtain a copy of the License at
12
http://www.netbeans.org/cddl-gplv2.html
13
or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
14
specific language governing permissions and limitations under the
15
License. When distributing the software, include this License Header
16
Notice in each file and include the License file at
17
nbbuild/licenses/CDDL-GPL-2-CP. Sun designates this
18
particular file as subject to the "Classpath" exception as provided
19
by Sun in the GPL Version 2 section of the License file that
20
accompanied this code. If applicable, add the following below the
21
License Header, with the fields enclosed by brackets [] replaced by
22
your own identifying information:
23
"Portions Copyrighted [year] [name of copyright owner]"
27
The Original Software is NetBeans. The Initial Developer of the Original
28
Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
29
Microsystems, Inc. All Rights Reserved.
31
If you wish your version of this file to be governed by only the CDDL
32
or only the GPL Version 2, indicate your decision by adding
33
"[Contributor] elects to include this software in this distribution
34
under the [CDDL or GPL Version 2] license." If you do not indicate a
35
single choice of license, a recipient has the option to distribute
36
your version of this file under either the CDDL, the GPL Version 2 or
37
to extend the choice of license to its licensees as provided above.
38
However, if you add GPL Version 2 code and therefore, elected the GPL
39
Version 2 license, then the option applies only if the new code is
40
made subject to such option by the copyright holder.
44
-//NetBeans//DTD Window Manager Properties 2.0//EN
47
<!-- The root element for window manager properties. Consists of subelements
48
for specific properties.
49
Attribute "version" is versioning attribute which in fact specifies
50
version of this DTD. Attribute is used to perform simple versioning
51
without the need to use time-consuming xml validation using this DTD.
53
<!ELEMENT windowmanager (main-window?, editor-area, screen?, active-mode?, maximized-mode?, toolbar?, tc-list?, imported-tcrefs?) >
54
<!ATTLIST windowmanager
55
version CDATA #REQUIRED
58
<!-- Element "main-window" contains properties of main window.
60
<!ELEMENT main-window (joined-properties | separated-properties |
61
(joined-properties, separated-properties) |
62
(separated-properties, joined-properties)) >
66
<!-- Element "joined-properties" contains properties of main window in joined state.
67
"x" gives position of main window on screen on horizontal axis left is 0
69
"y" gives position of main window on screen on vertical axis top is 0
71
"width" gives absolute width of main window
73
"height" gives absolute height of main window
75
"relative-x" gives relative width of main window
76
Either x or relative-x or centered-horizontally true must be specified.
78
"relative-y" gives relative width of main window
79
Either y or relative-y or centered-vertically must be specified.
81
"relative-width" gives relative width of main window
82
Either width or relative-width must be specified.
84
"relative-height" gives relative width of main window
85
Either height or relative-height must be specified.
87
"centered-horizontally" is true when main window is centered horizontally
89
"centered-vertically" is true when main window is centered vertically
91
"maximize-if-width-below" and
93
"maximize-if-height-below" are optional,
94
they specify limit on computed absolute width/height,
95
IF min(screen.width, maximize-if-width-below) > main-window.width OR
96
min(screen.height, maximize-if-height-below) > main-window.height THEN
97
IF screen.width > maximize-if-width-below AND screen.height > maximize-if-height-below THEN
98
set main window size to maximize-if-width-below, maximize-if-height-below
103
It is to avoid main window size bigger than screen size (width or height).
105
"frame-state" represents state of frame.
106
It is represented as bitwise mask - integer value.
107
See java.awt.Frame for possible values.
108
Default value is Frame.NORMAL (0).
110
<!ELEMENT joined-properties EMPTY >
111
<!ATTLIST joined-properties
115
height CDATA #IMPLIED
116
relative-x CDATA #IMPLIED
117
relative-y CDATA #IMPLIED
118
relative-width CDATA #IMPLIED
119
relative-height CDATA #IMPLIED
120
centered-horizontally (true | false) #IMPLIED
121
centered-vertically (true | false) #IMPLIED
122
maximize-if-width-below CDATA #IMPLIED
123
maximize-if-height-below CDATA #IMPLIED
124
frame-state CDATA #IMPLIED
127
<!-- Element "separated-properties" contains properties of main window in separated state.
128
"x" gives position of main window on screen on horizontal axis left is 0
130
"y" gives position of main window on screen on vertical axis top is 0
132
"width" gives absolute width of main window
134
"height" gives absolute height of main window
136
"relative-x" gives relative width of main window
137
Either x or relative-x or centered-horizontally true must be specified.
139
"relative-y" gives relative width of main window
140
Either y or relative-y or centered-vertically must be specified.
142
"relative-width" gives relative width of main window
143
Either width or relative-width must be specified.
145
"relative-height" gives relative width of main window
146
Either height or relative-height must be specified.
148
"centered-horizontally" is true when main window is centered horizontally
150
"centered-vertically" is true when main window is centered vertically
152
"frame-state" represents state of frame.
153
It is represented as bitwise mask - integer value.
154
See java.awt.Frame for possible values.
155
Default value is Frame.NORMAL (0).
157
<!ELEMENT separated-properties EMPTY >
158
<!ATTLIST separated-properties
162
height CDATA #IMPLIED
163
relative-x CDATA #IMPLIED
164
relative-y CDATA #IMPLIED
165
relative-width CDATA #IMPLIED
166
relative-height CDATA #IMPLIED
167
centered-horizontally (true | false) #IMPLIED
168
centered-vertically (true | false) #IMPLIED
169
frame-state CDATA #IMPLIED
172
<!-- Element "editor-area" contains bounds and constraints of editor area
173
according to state of editor area.
174
"state" sets state of editor area (desktop) joined when all windows are
175
part of main window or separated when main window, windows and EA are separate
176
into their own native windows.
178
"frame-state" represents state of frame.
179
It is represented as bitwise mask - integer value.
180
See java.awt.Frame for possible values.
181
Relevant for separated state of editor area when editor area resides in its own frame.
182
Default value is Frame.NORMAL (0).
184
<!ELEMENT editor-area (constraints, (bounds | relative-bounds)?) >
185
<!ATTLIST editor-area
186
state (joined | separated) #REQUIRED
187
frame-state CDATA #IMPLIED
190
<!-- Element "bounds" contains bounds of editor area.
191
"x" gives position of editor area on screen on horizontal axis
193
"y" gives position of editor area on screen on vertical axis
195
"width" gives absolute width of editor area.
196
"height" gives absolute height of editor area.
197
Relevant only when editor area is separated from main window.
199
<!ELEMENT bounds EMPTY >
203
width CDATA #REQUIRED
204
height CDATA #REQUIRED
207
<!-- Relative (percentage) bounds of editor area, stored in attributes
208
x, y, width, height, where x, y is location of left top point of bounds
209
rectangle, it is relative to width of main window and height of area below
211
Relative bounds can be used to define starting position of separated editor area
212
in module layer (relative bounds are independent of screen size).
213
Relevant only when editor area is separated from main window.
215
<!ELEMENT relative-bounds EMPTY >
216
<!ATTLIST relative-bounds
219
width CDATA #REQUIRED
220
height CDATA #REQUIRED
223
<!-- Constraints describes path of editor area in model tree.
224
Path consists of array of values to describe path eg. [H1;V2].
225
Relevant only for editor area inside desktop
227
<!ELEMENT constraints (path*) >
228
<!ATTLIST constraints
231
<!-- Path describe path to mode in model tree.
232
"orientation" sets orientation of splitter. "horizontal" means splitting
233
along x axis - components are from left to right. "vertical" means splitting
234
along y axis - components are from top to bottom.
235
"number" sets number of cell in given split cell. It is integer number. Number defines
236
position of given cell in array of cells. It is possible to define for example
237
20 for first cell and 40 for second cell. Later it is possible to insert third cell between
238
first and second by using 30 for third cell. It is usefull for platform to allow third party
239
modules to modify (insert) their own modes to existing layout.
240
Cells are counted from left to right in case of vertical split and
241
from top to bottom in case of horizontal split.
242
"weight" is double number from 0 to 1. It sets relative size of cell
243
in given splitter. Default value is 0.5.
245
<!ELEMENT path EMPTY >
247
orientation (horizontal | vertical) #REQUIRED
248
number CDATA #REQUIRED
249
weight CDATA #IMPLIED
252
<!-- Element "screen" contains properties of screen.
253
"width" is width of screen in pixels
254
"height" is height of screen in pixels
256
<!ELEMENT screen EMPTY >
258
width CDATA #REQUIRED
259
height CDATA #REQUIRED
262
<!-- Element "active-mode" contains unique name of active mode or is empty
263
when no mode is active.
264
"name" unique name of active mode
266
<!ELEMENT active-mode EMPTY >
267
<!ATTLIST active-mode
271
<!-- Element "maximized-mode" contains unique name of maximized mode or is empty
272
when no mode is maximized.
273
"name" unique name of maximized mode. It is empty when no mode is maximized. -->
274
<!ELEMENT maximized-mode EMPTY >
275
<!ATTLIST maximized-mode
279
<!-- Toolbar attributes.
280
"configuration" name of active toolbar configuration -->
281
<!ELEMENT toolbar EMPTY >
283
configuration CDATA #IMPLIED
286
<!-- Element "tc-list" contains ordered list of TopComponent Ids. Used to save state of
288
<!ELEMENT tc-list (tc-id*) >
292
<!-- Element "tc-id" contains TopComponent Id. It is part of element "tc-list".
293
"id" is unique id of TopComponent -->
294
<!ELEMENT tc-id EMPTY >
299
<!-- Element "imported-tcrefs" contains list of imported TopComponent Ids with source
300
workspace name and source mode name. -->
301
<!ELEMENT imported-tcrefs (tcref-item*) >
302
<!ATTLIST imported-tcrefs
305
<!-- Element "tcref-item" contains information about imported TopComponent.
306
It is part of element "imported-tcrefs".
307
"workspace" unique name of workspace from which TopComponent was imported
308
"mode" unique name of mode from which TopComponent was imported
309
"id" is unique id of imported TopComponent -->
310
<!ELEMENT tcref-item EMPTY >
312
workspace CDATA #REQUIRED