xref: /haiku/docs/user/interface/GridLayout.dox (revision d374a27286b8a52974a97dba0d5966ea026a665d)
1/*!
2	\class BGridLayout
3	\ingroup interface
4	\ingroup layout
5	\ingroup libbe
6
7	\brief The BGridLayout class a BLayout subclass that arranges the items it
8	holds in a grid.
9
10	Each item in a BGridLayout receives a rectangular area which can span more
11	than a single row or column. The indexing of columns and rows is zero based,
12	starting in the top-left.
13
14	\warning This class is not yet finalized, if you use it in your software
15	assume that it will break some time in the future.
16*/
17
18
19/*!
20	\fn BGridLayout::BGridLayout(float horizontal = 0.0f, float vertical = 0.0f)
21	\brief Create a BGridLayout with \c horizontal space between columns and
22		\c vertical space between rows.
23*/
24
25
26/*!
27	\fn BGridLayout::BGridLayout(BMessage* from)
28	\brief Archive constructor.
29*/
30
31
32/*!
33	\fn int32 BGridLayout::CountColumns() const
34	\brief Returns the number of active columns in this layout.
35*/
36
37
38/*!
39	\fn int32 BGridLayout::CountRows() const
40	\brief Returns the number of active rows in this layout.
41*/
42
43
44/*!
45	\fn float BGridLayout::HorizontalSpacing() const
46	\brief Returns the spacing between columns for this layout.
47*/
48
49
50/*!
51	\fn float BGridLayout::VerticalSpacing() const
52	\brief Returns the spacing between rows for this layout.
53*/
54
55
56/*!
57	\fn void BGridLayout::SetHorizontalSpacing(float spacing);
58	\brief Set the spacing between columns for this layout.
59*/
60
61
62/*!
63	\fn void BGridLayout::SetVerticalSpacing(float spacing)
64	\brief Set the spacing between rows for this layout.
65*/
66
67
68/*!
69	\fn	void BGridLayout::SetSpacing(float horizontal, float vertical)
70	\brief Set the spacing between columns and rows for this layout.
71*/
72
73
74/*!
75	\fn float BGridLayout::ColumnWeight(int32 column) const
76	\brief Returns the weight for \c column.
77*/
78
79
80/*!
81	\fn void BGridLayout::SetColumnWeight(int32 column, float weight)
82	\brief Set the weight for \c column to \c weight.
83*/
84
85
86/*!
87	\fn float BGridLayout::MinColumnWidth(int32 column) const
88	\brief Returns the minimum width for \c column.
89*/
90
91
92/*!
93	\fn void BGridLayout::SetMinColumnWidth(int32 column, float width)
94	\brief Sets the minimum width for \c column to \c width.
95*/
96
97
98/*!
99	\fn float BGridLayout::MaxColumnWidth(int32 column) const
100	\brief Returns the maximum width for \c column.
101*/
102
103
104/*!
105	\fn void BGridLayout::SetMaxColumnWidth(int32 column, float width)
106	\brief Sets the maximum width for \c column to \c width.
107*/
108
109
110/*!
111	\fn float BGridLayout::RowWeight(int32 row) const
112	\brief Returns the weight for \c row.
113*/
114
115
116/*!
117	\fn void BGridLayout::SetRowWeight(int32 row, float weight)
118	\brief Set the weight for \c row to \c weight.
119*/
120
121
122/*!
123	\fn float BGridLayout::MinRowHeight(int32 row) const
124	\brief Returns the minimum height for \c row.
125*/
126
127
128/*!
129	\fn void BGridLayout::SetMinRowHeight(int32 row, float height)
130	\brief Sets the minimum height for \c row to \c width.
131*/
132
133
134/*!
135	\fn float BGridLayout::MaxRowHeight(int32 row) const
136	\brief Returns the maximum height for \c row.
137*/
138
139
140/*!
141	\fn void BGridLayout::SetMaxRowHeight(int32 row, float height)
142	\brief Sets the maximum height for \c row to \c width.
143*/
144
145
146/*!
147	\fn BLayoutItem* BGridLayout::AddView(BView* child)
148	\brief Adds \c child to this layout in the first empty cell available, or
149		in a new column in the first row if there are no emtpy cells.
150*/
151
152
153/*!
154	\fn BLayoutItem* BGridLayout::AddView(int32 index, BView* child);
155	\copybrief BGridLayout::AddView(BView*)
156*/
157
158
159/*!
160	\fn BLayoutItem* BGridLayout::AddView(BView* child, int32 column, int32 row,
161			int32 columnCount = 1, int32 rowCount = 1);
162	\brief Adds \c child to this layout at \c column and \c row. \c child may
163		also occupy additional cells if \c columnCount or \c rowCount are
164		greater than 1.
165
166	Fails and returns NULL if the requested area is occupied, or if internal
167	memory allocations fail.
168*/
169
170
171/*!
172	\fn BLayoutItem* BGridLayout::AddItem(BLayoutItem* item)
173	\brief Adds \c item to this layout in the first empty cell available, or
174		in a new column in the first row if there are no emtpy cells.
175*/
176
177
178/*!
179	\fn BLayoutItem* BGridLayout::AddItem(int32 index, BLayoutItem* item);
180	\copybrief BGridLayout::AddItem(BLayoutItem*)
181*/
182
183
184/*!
185	\fn BLayoutItem* BGridLayout::AddItem(BLayoutItem* item, int32 column,
186		int32 row, int32 columnCount = 1, int32 rowCount = 1);
187	\brief Adds \c item to this layout at \c column and \c row. \c item may
188		also occupy additional cells if \c columnCount or \c rowCount are
189		greater than 1.
190
191	Fails and returns NULL if the requested area is occupied, or if internal
192	memory allocations fail.
193*/
194