]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/sizer.tex
change wxTextValidator to use wxArrayString instead of wxStringList
[wxWidgets.git] / docs / latex / wx / sizer.tex
index 4c0c69cf1a1d3781a4c90f935bcb47f7540ae09c..5851c0aac7a769578440acbc0f2343fc3156e4a9 100644 (file)
@@ -34,6 +34,10 @@ capabilities for the various virtual methods.}
 \helpref{wxObject}{wxobject}\\
 \helpref{wxClientDataContainer}{wxclientdatacontainer}
 
+\wxheading{Include files}
+
+<wx/sizer.h>
+
 \wxheading{See also}
 
 \helpref{Sizer overview}{sizeroverview}
@@ -58,11 +62,15 @@ The destructor.
 
 \membersection{wxSizer::Add}\label{wxsizeradd}
 
-\func{void}{Add}{\param{wxWindow* }{window}, \param{int }{proportion = 0},\param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Add}{\param{wxWindow* }{window}, \param{const wxSizerFlags\& }{flags}}
+
+\func{wxSizerItem*}{Add}{\param{wxWindow* }{window}, \param{int }{proportion = 0},\param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+
+\func{wxSizerItem*}{Add}{\param{wxSizer* }{sizer}, \param{const wxSizerFlags\& }{flags}}
 
-\func{void}{Add}{\param{wxSizer* }{sizer}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Add}{\param{wxSizer* }{sizer}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
 
-\func{void}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
 
 Appends a child to the sizer.  wxSizer itself is an abstract class, but the parameters are
 equivalent in the derived classes that you will instantiate to use it so they are described
@@ -138,10 +146,12 @@ the sizer, adjusted for the border if any.}
 item, for use in derived classes when sizing information is more
 complex than the {\it proportion} and {\it flag} will allow for.}
 
+\docparam{flags}{A \helpref{wxSizerFlags}{wxsizerflags} object that 
+enables you to specify most of the above parameters more conveniently.}
 
 \membersection{wxSizer::AddSpacer}\label{wxsizeraddspacer}
 
-\func{void}{AddSpacer}{\param{int }{size}}
+\func{wxSizerItem*}{AddSpacer}{\param{int }{size}}
 
 Adds non-stretchable space to the sizer. More readable way of calling
 \helpref{Add}{wxsizeradd}(size, size, 0).
@@ -149,7 +159,7 @@ Adds non-stretchable space to the sizer. More readable way of calling
 
 \membersection{wxSizer::AddStretchSpacer}\label{wxsizeraddstretchspacer}
 
-\func{void}{AddStretchSpacer}{\param{int }{prop = 1}}
+\func{wxSizerItem*}{AddStretchSpacer}{\param{int }{prop = 1}}
 
 Adds stretchable space to the sizer. More readable way of calling
 \helpref{Add}{wxsizeradd}(0, 0, prop).
@@ -210,6 +220,21 @@ windows which manage it.
 \helpref{wxSizer::SetVirtualSizeHints}{wxsizersetvirtualsizehints}
 
 
+\membersection{wxSizer::GetItem}\label{wxsizergetitem}
+
+\func{wxSizerItem *}{GetItem}{\param{wxWindow* }{window}, \param{bool }{recursive = false}}
+
+\func{wxSizerItem *}{GetItem}{\param{wxSizer* }{sizer}, \param{bool }{recursive = false}}
+
+\func{wxSizerItem *}{GetItem}{\param{size\_t }{index}}
+
+Finds item of the sizer which holds given {\it window}, {\it sizer} or is located
+in sizer at position {\it index}.
+Use parameter {\it recursive} to search in subsizers too.
+
+Returns pointer to item or NULL.
+
+
 \membersection{wxSizer::GetSize}\label{wxsizergetsize}
 
 \func{wxSize}{GetSize}{\void}
@@ -235,11 +260,15 @@ size of all the children and their borders or the minimal size set by
 
 \membersection{wxSizer::Insert}\label{wxsizerinsert}
 
-\func{void}{Insert}{\param{size\_t }{index}, \param{wxWindow* }{window}, \param{int }{proportion = 0},\param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Insert}{\param{size\_t }{index}, \param{wxWindow* }{window}, \param{const wxSizerFlags\& }{flags}}
+
+\func{wxSizerItem*}{Insert}{\param{size\_t }{index}, \param{wxWindow* }{window}, \param{int }{proportion = 0},\param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
 
-\func{void}{Insert}{\param{size\_t }{index}, \param{wxSizer* }{sizer}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Insert}{\param{size\_t }{index}, \param{wxSizer* }{sizer}, \param{const wxSizerFlags\& }{flags}}
 
-\func{void}{Insert}{\param{size\_t }{index}, \param{int }{width}, \param{int }{height}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Insert}{\param{size\_t }{index}, \param{wxSizer* }{sizer}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+
+\func{wxSizerItem*}{Insert}{\param{size\_t }{index}, \param{int }{width}, \param{int }{height}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
 
 Insert a child into the sizer before any existing item at {\it index}.
 
@@ -250,7 +279,7 @@ See \helpref{wxSizer::Add}{wxsizeradd} for the meaning of the other parameters.
 
 \membersection{wxSizer::InsertSpacer}\label{wxsizerinsertspacer}
 
-\func{void}{InsertSpacer}{\param{size\_t }{index}, \param{int }{size}}
+\func{wxSizerItem*}{InsertSpacer}{\param{size\_t }{index}, \param{int }{size}}
 
 Inserts non-stretchable space to the sizer. More readable way of calling
 \helpref{Insert}{wxsizerinsert}(size, size, 0).
@@ -258,7 +287,7 @@ Inserts non-stretchable space to the sizer. More readable way of calling
 
 \membersection{wxSizer::InsertStretchSpacer}\label{wxsizerinsertstretchspacer}
 
-\func{void}{InsertStretchSpacer}{\param{size\_t }{index}, \param{int }{prop = 1}}
+\func{wxSizerItem*}{InsertStretchSpacer}{\param{size\_t }{index}, \param{int }{prop = 1}}
 
 Inserts stretchable space to the sizer. More readable way of calling
 \helpref{Insert}{wxsizerinsert}(0, 0, prop).
@@ -275,11 +304,15 @@ the current dimension.
 
 \membersection{wxSizer::Prepend}\label{wxsizerprepend}
 
-\func{void}{Prepend}{\param{wxWindow* }{window}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Prepend}{\param{wxWindow* }{window}, \param{const wxSizerFlags\& }{flags}}
+
+\func{wxSizerItem*}{Prepend}{\param{wxWindow* }{window}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+
+\func{wxSizerItem*}{Prepend}{\param{wxSizer* }{sizer}, \param{const wxSizerFlags\& }{flags}}
 
-\func{void}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
 
-\func{void}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border= 0}, \param{wxObject* }{userData = NULL}}
+\func{wxSizerItem*}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{proportion = 0}, \param{int }{flag = 0}, \param{int }{border= 0}, \param{wxObject* }{userData = NULL}}
 
 Same as \helpref{wxSizer::Add}{wxsizeradd}, but prepends the items to the beginning of the
 list of items (windows, subsizers or spaces) owned by this sizer.
@@ -287,7 +320,7 @@ list of items (windows, subsizers or spaces) owned by this sizer.
 
 \membersection{wxSizer::PrependSpacer}\label{wxsizerprependspacer}
 
-\func{void}{PrependSpacer}{\param{int }{size}}
+\func{wxSizerItem*}{PrependSpacer}{\param{int }{size}}
 
 Prepends non-stretchable space to the sizer. More readable way of calling
 \helpref{Prepend}{wxsizerprepend}(size, size, 0).
@@ -295,7 +328,7 @@ Prepends non-stretchable space to the sizer. More readable way of calling
 
 \membersection{wxSizer::PrependStretchSpacer}\label{wxsizerprependstretchspacer}
 
-\func{void}{PrepentStretchSpacer}{\param{int }{prop = 1}}
+\func{wxSizerItem*}{PrependStretchSpacer}{\param{int }{prop = 1}}
 
 Prepends stretchable space to the sizer. More readable way of calling
 \helpref{Prepend}{wxsizerprepend}(0, 0, prop).
@@ -391,15 +424,88 @@ minimal size. For windows with managed scrollbars this will set them appropriate
 
 \membersection{wxSizer::Show}\label{wxsizershow}
 
-\func{void}{Show}{\param{wxWindow* }{window}, \param{bool }{show = true}}
+\func{bool}{Show}{\param{wxWindow* }{window}, \param{bool }{show = true}, \param{bool }{recursive = false}}
 
-\func{void}{Show}{\param{wxSizer* }{sizer}, \param{bool }{show = true}}
+\func{bool}{Show}{\param{wxSizer* }{sizer}, \param{bool }{show = true}, \param{bool }{recursive = false}}
 
-\func{void}{Show}{\param{size\_t }{index}, \param{bool }{show = true}}
+\func{bool}{Show}{\param{size\_t }{index}, \param{bool }{show = true}}
 
 Shows or hides the {\it window}, {\it sizer}, or item at {\it index}.
 To make a sizer item disappear or reappear, use Show() followed by Layout().
+Use parameter {\it recursive} to show or hide elements found in subsizers.
+
+Returns true if the child item was found, false otherwise.
 
 Note that this only works with wxBoxSizer and wxFlexGridSizer, since they
 are the only two sizer classes that can size rows/columns independently.
 
+
+
+
+\section{\class{wxSizerFlags}}\label{wxsizerflags}
+
+PRELIMINARY.
+
+Normally, when you add something to a sizer via \helpref{wxSizer::Add}{wxsizeradd}, you have to specify a lot of flags and parameters.  This can be unwieldy.
+
+This is where wxSizerFlags comes in.  Instead of a bunch of flags and other stuff, you can use wxSizerFlags, which is a convenient class for doing so.
+
+Note that by specification, all methods of wxSizerFlags return the wxSizerFlags object itself to ease the calling of multiple methods at a time.
+
+
+\membersection{wxSizerFlags::wxSizerFlags}\label{wxsizerflagsctor}
+
+\func{}{wxSizerFlags}{\param{int }{proportion = 0}}
+
+Creates the wxSizer with the proportion specified by \tt{proportion}.
+
+
+\membersection{wxSizerFlags::Align}\label{wxsizerflagsalign}
+
+\func{wxSizerFlags\& }{Align}{\param{int }{align = 0}}
+
+Sets the alignment of this wxSizerFlags to \tt{align}.
+
+Note that if this method is not called, the wxSizerFlags has no specified alignment.
+
+
+\membersection{wxSizerFlags::Border}\label{wxsizerflagsborder}
+
+\func{wxSizerFlags\& }{Border}{\param{int }{direction}, \param{int }{borderinpixels}}
+
+Sets the wxSizerFlags to have a border of a number of pixels specified by \tt{borderinpixels} with the directions specified by \tt{direction}.
+
+\func{wxSizerFlags\& }{Border}{\param{int }{direction = wxALL}}
+
+Sets the wxSizerFlags to have a border of a default size with the directions specified by \tt{direction}.
+
+
+\membersection{wxSizerFlags::Center}\label{wxsizerflagscenter}
+
+\func{wxSizerFlags\& }{Center}{\void}
+
+Sets the object of the wxSizerFlags to center itself in the area it is given.
+
+
+\membersection{wxSizerFlags::Centre}\label{wxsizerflagscentre}
+
+\func{wxSizerFlags\& }{Centre}{\void}
+
+\helpref{wxSizerFlags::Center}{wxsizerflagscenter} for people with the other dialect of english.
+
+
+\membersection{wxSizerFlags::Expand}\label{wxsizerflagsexpand}
+
+\func{wxSizerFlags\& }{Align}{\void}
+
+Sets the object of the wxSizerFlags to expand to fill as much area as it can.
+
+
+\membersection{wxSizerFlags::Proportion}\label{wxsizerflagsproportion}
+
+\func{wxSizerFlags\& }{Proportion}{\param{int }{proportion = 0}}
+
+Sets the proportion of this wxSizerFlags to \tt{proportion}
+
+
+