root/trunk/luigi/doc/arranger.html

Revision 36, 7.7 kB (checked in by baxissimo, 2 years ago)

First cut at docs using Candydoc.

Line 
1 <html><head>
2 <meta http-equiv="content-type" content="text/html; charset=utf-8">
3 <meta content="text/javascript" http-equiv="content-script-type">
4 <title>luigi.arranger</title>
5 <link rel="stylesheet" type="text/css" href="candydoc/style.css">
6 <!--[if lt IE 7]><link rel="stylesheet" type="text/css" href="candydoc/ie56hack.css"><![endif]-->
7 <script language="JavaScript" src="candydoc/util.js" type="text/javascript"></script>
8 <script language="JavaScript" src="candydoc/tree.js" type="text/javascript"></script>
9 <script language="JavaScript" src="candydoc/explorer.js" type="text/javascript"></script>
10 </head><body>
11 <div id="tabarea"></div><div id="explorerclient"></div>
12 <div id="content"><script>explorer.initialize("luigi.arranger");</script>
13     <table class="content">
14         <tr><td id="docbody"><h1>luigi.arranger</h1><!-- Generated by Ddoc from arranger.d -->
15 In Luigi, Arrangers are responsible for deciding how widgets are
16    arranged in a container.  The Arranger interface actually does not
17    depend on the GUI portion of the library it all. It only requires
18    items to support the Arrangeable interface.  The Arrangeable
19    interface just provides information about an item's preferred,
20    and minimum sizes.
21 <br><br>
22 Note in many toolkits "arranging" is referred to as "layout".
23    Layout is a good word, but the problem is that its hard to come up
24    with good names for the things that can be laid-out and the thing
25    that does the laying-out.  You end up with words like "Layoutable",
26    "Layouter", "Layoutee", "Layouting", or "LayoutManager", which are
27    all either dubious as English words, or just too long.  Adding to
28    the mess is the fact that "layout" is both a verb and a noun, so
29    just "layout" alone is ambiguious.  Is layout() a method that does
30    the layout or one that returns an arrangement of items, or perhaps
31    one that returns the object responsible for laying things out?
32 <br><br>
33
34    In contrast, starting from the verb "arrange" we can use the very
35    reasonable English words "arrange", "arranging", "arranged",
36    "arrangement", "
37 <span class="currsymbol">arranger</span>
38 <script>explorer.outline.addDecl('arranger');</script>
39
40 ", and "arrangeable".
41
42 <br><br>
43
44
45 <script>explorer.outline.incSymbolLevel();</script>
46 <dl>
47 <script>explorer.outline.writeEnabled = true;</script>
48 <dt><span class="decl">interface
49 <span class="currsymbol">Arrangeable</span>
50 <script>explorer.outline.addDecl('Arrangeable');</script>
51
52 ;
53 </span></dt>
54 <script>explorer.outline.writeEnabled = false;</script>
55
56
57 <dd>An abstract interface for an Object that can be arranged
58 <br><br>
59
60
61 <script>explorer.outline.incSymbolLevel();</script>
62 <dl>
63 <script>explorer.outline.writeEnabled = true;</script>
64 <dt><span class="decl">abstract int
65 <span class="currsymbol">stretch_x</span>
66 <script>explorer.outline.addDecl('stretch_x');</script>
67
68 ();
69 </span></dt>
70 <script>explorer.outline.writeEnabled = false;</script>
71
72
73 <dd>Return stretch factor in x and y directions.
74   If component is fixed size, then should be 0.
75   If nonzero then all nonzero elements share the
76   available space in proportion with their stretch
77   factors.  So a stretch=2 gets twice as much
78   space as a stretch=1.
79      
80 <br><br>
81
82 </dd>
83
84 <script>explorer.outline.writeEnabled = true;</script>
85 <dt><span class="decl">abstract void
86 <span class="currsymbol">arrange</span>
87 <script>explorer.outline.addDecl('arrange');</script>
88
89 ();
90 </span></dt>
91 <script>explorer.outline.writeEnabled = false;</script>
92
93
94 <dd>Arrange any sub-objects
95 <br><br>
96
97 </dd>
98 </dl>
99 <script>explorer.outline.decSymbolLevel();</script>
100
101
102 </dd>
103
104 <script>explorer.outline.writeEnabled = true;</script>
105 <dt><span class="decl">interface
106 <span class="currsymbol">Arranger</span>
107 <script>explorer.outline.addDecl('Arranger');</script>
108
109 ;
110 </span></dt>
111 <script>explorer.outline.writeEnabled = false;</script>
112
113
114 <dd>An abstract interface for an Object that arranges things
115 <br><br>
116
117
118 <script>explorer.outline.incSymbolLevel();</script>
119 <dl>
120 <script>explorer.outline.writeEnabled = true;</script>
121 <dt><span class="decl">abstract int
122 <span class="currsymbol">orderof</span>
123 <script>explorer.outline.addDecl('orderof');</script>
124
125 (Arrangeable <span class="funcparam">item</span>);
126 </span></dt>
127 <script>explorer.outline.writeEnabled = false;</script>
128
129
130 <dd>Return the natural order (tab order) of the <span class="funcparam">item</span>.
131 <br><br>
132 The <span class="funcparam">item</span> should be contained by the given arranger.
133 <br><br>
134
135 </dd>
136 </dl>
137 <script>explorer.outline.decSymbolLevel();</script>
138
139
140 </dd>
141
142 <script>explorer.outline.writeEnabled = true;</script>
143 <dt><span class="decl">class
144 <span class="currsymbol">BaseArranger</span>
145 <script>explorer.outline.addDecl('BaseArranger');</script>
146
147 : luigi.arranger.Arranger;
148 </span></dt>
149 <script>explorer.outline.writeEnabled = false;</script>
150
151
152 <dd>An abstract base class that implements some common parts of the Arranger
153   interface, and leaves others for subclasses to specify.
154  
155 <br><br>
156
157
158 <script>explorer.outline.incSymbolLevel();</script>
159 <dl></dl>
160 <script>explorer.outline.decSymbolLevel();</script>
161
162
163 </dd>
164
165 <script>explorer.outline.writeEnabled = true;</script>
166 <dt><span class="decl">class
167 <span class="currsymbol">GridArranger</span>
168 <script>explorer.outline.addDecl('GridArranger');</script>
169
170 : luigi.arranger.BaseArranger;
171 </span></dt>
172 <script>explorer.outline.writeEnabled = false;</script>
173
174
175 <dd>The
176 <span class="currsymbol">GridArranger</span>
177 <script>explorer.outline.addDecl('GridArranger');</script>
178
179  arranges items into a grid with a fixed number of
180  columns or rows.
181  
182 <br><br>
183
184
185 <script>explorer.outline.incSymbolLevel();</script>
186 <dl></dl>
187 <script>explorer.outline.decSymbolLevel();</script>
188
189
190 </dd>
191
192 <script>explorer.outline.writeEnabled = true;</script>
193 <dt><span class="decl">class
194 <span class="currsymbol">BorderArranger</span>
195 <script>explorer.outline.addDecl('BorderArranger');</script>
196
197 : luigi.arranger.BaseArranger;
198 </span></dt>
199 <script>explorer.outline.writeEnabled = false;</script>
200
201
202 <dd>The
203 <span class="currsymbol">BorderArranger</span>
204 <script>explorer.outline.addDecl('BorderArranger');</script>
205
206  can arrange up to five items, which can be
207  either on the north, south, east, or west borders of the parent
208  container, or in the remaining center portion..  The position is specified by
209  the Region enumerated type.
210  
211 <br><br>
212
213
214 <script>explorer.outline.incSymbolLevel();</script>
215 <dl></dl>
216 <script>explorer.outline.decSymbolLevel();</script>
217
218
219 </dd>
220 </dl>
221 <script>explorer.outline.decSymbolLevel();</script>
222
223
224 </td></tr>
225         <tr><td id="docfooter">
226             Page was generated with
227             <img src="candydoc/img/candydoc.gif" style="vertical-align:middle; position:relative; top:-1px">
228             on Wed Dec  6 09:51:44 2006
229
230         </td></tr>
231     </table>
232 </div>
233 <script>
234     explorer.packageExplorer.addModule("luigi.base");
235     explorer.packageExplorer.addModule("luigi.arranger");
236     explorer.packageExplorer.addModule("luigi.adapter");
237     explorer.packageExplorer.addModule("luigi.adapters.gld");
238     explorer.packageExplorer.addModule("luigi.adapters.glfw");
239     explorer.packageExplorer.addModule("luigi.event");
240     explorer.packageExplorer.addModule("luigi.font");
241     explorer.packageExplorer.addModule("luigi.gldraw");
242     explorer.packageExplorer.addModule("luigi.gui");
243     explorer.packageExplorer.addModule("luigi.theme");
244     explorer.packageExplorer.addModule("luigi.themes.std");
245     explorer.packageExplorer.addModule("luigi.themes.dxut");
246     explorer.packageExplorer.addModule("luigi.opengl");
247     explorer.packageExplorer.addModule("luigi.signalobj");
248     explorer.packageExplorer.addModule("wrapres");</script>
249 </body></html>
Note: See TracBrowser for help on using the browser.