1%%
2%% %CopyrightBegin%
3%%
4%% Copyright Ericsson AB 2008-2016. All Rights Reserved.
5%%
6%% Licensed under the Apache License, Version 2.0 (the "License");
7%% you may not use this file except in compliance with the License.
8%% You may obtain a copy of the License at
9%%
10%%     http://www.apache.org/licenses/LICENSE-2.0
11%%
12%% Unless required by applicable law or agreed to in writing, software
13%% distributed under the License is distributed on an "AS IS" BASIS,
14%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15%% See the License for the specific language governing permissions and
16%% limitations under the License.
17%%
18%% %CopyrightEnd%
19%% This file is generated DO NOT EDIT
20
21%% @doc See external documentation: <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html">wxGridSizer</a>.
22%% <p>This class is derived (and can use functions) from:
23%% <br />{@link wxSizer}
24%% </p>
25%% @type wxGridSizer().  An object reference, The representation is internal
26%% and can be changed without notice. It can't be used for comparsion
27%% stored on disc or distributed for use on other nodes.
28
29-module(wxGridSizer).
30-include("wxe.hrl").
31-export([destroy/1,getCols/1,getHGap/1,getRows/1,getVGap/1,new/1,new/2,new/4,setCols/2,
32  setHGap/2,setRows/2,setVGap/2]).
33
34%% inherited exports
35-export([add/2,add/3,add/4,addSpacer/2,addStretchSpacer/1,addStretchSpacer/2,
36  calcMin/1,clear/1,clear/2,detach/2,fit/2,fitInside/2,getChildren/1,getItem/2,
37  getItem/3,getMinSize/1,getPosition/1,getSize/1,hide/2,hide/3,insert/3,
38  insert/4,insert/5,insertSpacer/3,insertStretchSpacer/2,insertStretchSpacer/3,
39  isShown/2,layout/1,parent_class/1,prepend/2,prepend/3,prepend/4,prependSpacer/2,
40  prependStretchSpacer/1,prependStretchSpacer/2,recalcSizes/1,remove/2,
41  replace/3,replace/4,setDimension/5,setItemMinSize/3,setItemMinSize/4,
42  setMinSize/2,setMinSize/3,setSizeHints/2,setVirtualSizeHints/2,show/2,
43  show/3]).
44
45-export_type([wxGridSizer/0]).
46%% @hidden
47parent_class(wxSizer) -> true;
48parent_class(_Class) -> erlang:error({badtype, ?MODULE}).
49
50-type wxGridSizer() :: wx:wx_object().
51%% @equiv new(Cols, [])
52-spec new(Cols) -> wxGridSizer() when
53	Cols::integer().
54
55new(Cols)
56 when is_integer(Cols) ->
57  new(Cols, []).
58
59%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizerwxgridsizer">external documentation</a>.
60-spec new(Cols, [Option]) -> wxGridSizer() when
61	Cols::integer(),
62	Option :: {'vgap', integer()}
63		 | {'hgap', integer()}.
64new(Cols, Options)
65 when is_integer(Cols),is_list(Options) ->
66  MOpts = fun({vgap, Vgap}, Acc) -> [<<1:32/?UI,Vgap:32/?UI>>|Acc];
67          ({hgap, Hgap}, Acc) -> [<<2:32/?UI,Hgap:32/?UI>>|Acc];
68          (BadOpt, _) -> erlang:error({badoption, BadOpt}) end,
69  BinOpt = list_to_binary(lists:foldl(MOpts, [<<0:32>>], Options)),
70  wxe_util:construct(?wxGridSizer_new_2,
71  <<Cols:32/?UI, 0:32,BinOpt/binary>>).
72
73%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizerwxgridsizer">external documentation</a>.
74-spec new(Rows, Cols, Vgap, Hgap) -> wxGridSizer() when
75	Rows::integer(), Cols::integer(), Vgap::integer(), Hgap::integer().
76new(Rows,Cols,Vgap,Hgap)
77 when is_integer(Rows),is_integer(Cols),is_integer(Vgap),is_integer(Hgap) ->
78  wxe_util:construct(?wxGridSizer_new_4,
79  <<Rows:32/?UI,Cols:32/?UI,Vgap:32/?UI,Hgap:32/?UI>>).
80
81%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizergetcols">external documentation</a>.
82-spec getCols(This) -> integer() when
83	This::wxGridSizer().
84getCols(#wx_ref{type=ThisT,ref=ThisRef}) ->
85  ?CLASS(ThisT,wxGridSizer),
86  wxe_util:call(?wxGridSizer_GetCols,
87  <<ThisRef:32/?UI>>).
88
89%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizergethgap">external documentation</a>.
90-spec getHGap(This) -> integer() when
91	This::wxGridSizer().
92getHGap(#wx_ref{type=ThisT,ref=ThisRef}) ->
93  ?CLASS(ThisT,wxGridSizer),
94  wxe_util:call(?wxGridSizer_GetHGap,
95  <<ThisRef:32/?UI>>).
96
97%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizergetrows">external documentation</a>.
98-spec getRows(This) -> integer() when
99	This::wxGridSizer().
100getRows(#wx_ref{type=ThisT,ref=ThisRef}) ->
101  ?CLASS(ThisT,wxGridSizer),
102  wxe_util:call(?wxGridSizer_GetRows,
103  <<ThisRef:32/?UI>>).
104
105%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizergetvgap">external documentation</a>.
106-spec getVGap(This) -> integer() when
107	This::wxGridSizer().
108getVGap(#wx_ref{type=ThisT,ref=ThisRef}) ->
109  ?CLASS(ThisT,wxGridSizer),
110  wxe_util:call(?wxGridSizer_GetVGap,
111  <<ThisRef:32/?UI>>).
112
113%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizersetcols">external documentation</a>.
114-spec setCols(This, Cols) -> 'ok' when
115	This::wxGridSizer(), Cols::integer().
116setCols(#wx_ref{type=ThisT,ref=ThisRef},Cols)
117 when is_integer(Cols) ->
118  ?CLASS(ThisT,wxGridSizer),
119  wxe_util:cast(?wxGridSizer_SetCols,
120  <<ThisRef:32/?UI,Cols:32/?UI>>).
121
122%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizersethgap">external documentation</a>.
123-spec setHGap(This, Gap) -> 'ok' when
124	This::wxGridSizer(), Gap::integer().
125setHGap(#wx_ref{type=ThisT,ref=ThisRef},Gap)
126 when is_integer(Gap) ->
127  ?CLASS(ThisT,wxGridSizer),
128  wxe_util:cast(?wxGridSizer_SetHGap,
129  <<ThisRef:32/?UI,Gap:32/?UI>>).
130
131%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizersetrows">external documentation</a>.
132-spec setRows(This, Rows) -> 'ok' when
133	This::wxGridSizer(), Rows::integer().
134setRows(#wx_ref{type=ThisT,ref=ThisRef},Rows)
135 when is_integer(Rows) ->
136  ?CLASS(ThisT,wxGridSizer),
137  wxe_util:cast(?wxGridSizer_SetRows,
138  <<ThisRef:32/?UI,Rows:32/?UI>>).
139
140%% @doc See <a href="http://www.wxwidgets.org/manuals/2.8.12/wx_wxgridsizer.html#wxgridsizersetvgap">external documentation</a>.
141-spec setVGap(This, Gap) -> 'ok' when
142	This::wxGridSizer(), Gap::integer().
143setVGap(#wx_ref{type=ThisT,ref=ThisRef},Gap)
144 when is_integer(Gap) ->
145  ?CLASS(ThisT,wxGridSizer),
146  wxe_util:cast(?wxGridSizer_SetVGap,
147  <<ThisRef:32/?UI,Gap:32/?UI>>).
148
149%% @doc Destroys this object, do not use object again
150-spec destroy(This::wxGridSizer()) -> 'ok'.
151destroy(Obj=#wx_ref{type=Type}) ->
152  ?CLASS(Type,wxGridSizer),
153  wxe_util:destroy(?DESTROY_OBJECT,Obj),
154  ok.
155 %% From wxSizer
156%% @hidden
157show(This,Index, Options) -> wxSizer:show(This,Index, Options).
158%% @hidden
159show(This,Index) -> wxSizer:show(This,Index).
160%% @hidden
161setVirtualSizeHints(This,Window) -> wxSizer:setVirtualSizeHints(This,Window).
162%% @hidden
163setSizeHints(This,Window) -> wxSizer:setSizeHints(This,Window).
164%% @hidden
165setItemMinSize(This,Index,Width,Height) -> wxSizer:setItemMinSize(This,Index,Width,Height).
166%% @hidden
167setItemMinSize(This,Index,Size) -> wxSizer:setItemMinSize(This,Index,Size).
168%% @hidden
169setMinSize(This,Width,Height) -> wxSizer:setMinSize(This,Width,Height).
170%% @hidden
171setMinSize(This,Size) -> wxSizer:setMinSize(This,Size).
172%% @hidden
173setDimension(This,X,Y,Width,Height) -> wxSizer:setDimension(This,X,Y,Width,Height).
174%% @hidden
175replace(This,Oldwin,Newwin, Options) -> wxSizer:replace(This,Oldwin,Newwin, Options).
176%% @hidden
177replace(This,Oldwin,Newwin) -> wxSizer:replace(This,Oldwin,Newwin).
178%% @hidden
179remove(This,Index) -> wxSizer:remove(This,Index).
180%% @hidden
181recalcSizes(This) -> wxSizer:recalcSizes(This).
182%% @hidden
183prependStretchSpacer(This, Options) -> wxSizer:prependStretchSpacer(This, Options).
184%% @hidden
185prependStretchSpacer(This) -> wxSizer:prependStretchSpacer(This).
186%% @hidden
187prependSpacer(This,Size) -> wxSizer:prependSpacer(This,Size).
188%% @hidden
189prepend(This,Width,Height, Options) -> wxSizer:prepend(This,Width,Height, Options).
190%% @hidden
191prepend(This,Width,Height) -> wxSizer:prepend(This,Width,Height).
192%% @hidden
193prepend(This,Item) -> wxSizer:prepend(This,Item).
194%% @hidden
195layout(This) -> wxSizer:layout(This).
196%% @hidden
197isShown(This,Index) -> wxSizer:isShown(This,Index).
198%% @hidden
199insertStretchSpacer(This,Index, Options) -> wxSizer:insertStretchSpacer(This,Index, Options).
200%% @hidden
201insertStretchSpacer(This,Index) -> wxSizer:insertStretchSpacer(This,Index).
202%% @hidden
203insertSpacer(This,Index,Size) -> wxSizer:insertSpacer(This,Index,Size).
204%% @hidden
205insert(This,Index,Width,Height, Options) -> wxSizer:insert(This,Index,Width,Height, Options).
206%% @hidden
207insert(This,Index,Width,Height) -> wxSizer:insert(This,Index,Width,Height).
208%% @hidden
209insert(This,Index,Item) -> wxSizer:insert(This,Index,Item).
210%% @hidden
211hide(This,Window, Options) -> wxSizer:hide(This,Window, Options).
212%% @hidden
213hide(This,Window) -> wxSizer:hide(This,Window).
214%% @hidden
215getMinSize(This) -> wxSizer:getMinSize(This).
216%% @hidden
217getPosition(This) -> wxSizer:getPosition(This).
218%% @hidden
219getSize(This) -> wxSizer:getSize(This).
220%% @hidden
221getItem(This,Window, Options) -> wxSizer:getItem(This,Window, Options).
222%% @hidden
223getItem(This,Window) -> wxSizer:getItem(This,Window).
224%% @hidden
225getChildren(This) -> wxSizer:getChildren(This).
226%% @hidden
227fitInside(This,Window) -> wxSizer:fitInside(This,Window).
228%% @hidden
229fit(This,Window) -> wxSizer:fit(This,Window).
230%% @hidden
231detach(This,Index) -> wxSizer:detach(This,Index).
232%% @hidden
233clear(This, Options) -> wxSizer:clear(This, Options).
234%% @hidden
235clear(This) -> wxSizer:clear(This).
236%% @hidden
237calcMin(This) -> wxSizer:calcMin(This).
238%% @hidden
239addStretchSpacer(This, Options) -> wxSizer:addStretchSpacer(This, Options).
240%% @hidden
241addStretchSpacer(This) -> wxSizer:addStretchSpacer(This).
242%% @hidden
243addSpacer(This,Size) -> wxSizer:addSpacer(This,Size).
244%% @hidden
245add(This,Width,Height, Options) -> wxSizer:add(This,Width,Height, Options).
246%% @hidden
247add(This,Width,Height) -> wxSizer:add(This,Width,Height).
248%% @hidden
249add(This,Window) -> wxSizer:add(This,Window).
250