Normally, when you add an item to a sizer via wxSizer::Add, you have to specify a lot of flags and parameters which can be unwieldy. This is where wxSizerFlags comes in: it allows you to specify all parameters using the named methods instead. For example, instead of
sizer->Add(ctrl, 0, wxEXPAND | wxBORDER, 10);you can now write
sizer->Add(ctrl, wxSizerFlags().Expand().Border(10));This is more readable and also allows you to create wxSizerFlags objects which can be reused for several sizer items.
wxSizerFlags flagsExpand(1); flagsExpand.Expand().Border(10); sizer->Add(ctrl1, flagsExpand); sizer->Add(ctrl2, flagsExpand);Note that by specification, all methods of wxSizerFlags return the wxSizerFlags object itself to allowing chaining multiple methods calls like in the examples above.
wxSizerFlags::wxSizerFlags
wxSizerFlags::Align
wxSizerFlags::Border
wxSizerFlags::Center
wxSizerFlags::Centre
wxSizerFlags::DoubleBorder
wxSizerFlags::DoubleHorzBorder
wxSizerFlags::Expand
wxSizerFlags::GetDefaultBorder
wxSizerFlags::Left
wxSizerFlags::FixedMinSize
wxSizerFlags::Proportion
wxSizerFlags::Right
wxSizerFlags::Shaped
wxSizerFlags::TripleBorder
wxSizerFlags(int proportion = 0)
Creates the wxSizer with the proportion specified by proportion.
wxSizerFlags& Align(int align = 0)
Sets the alignment of this wxSizerFlags to align.
Note that if this method is not called, the wxSizerFlags has no specified alignment.
See also
wxSizerFlags& Border(int direction, int borderinpixels)
wxSizerFlags& Border(int direction = wxALL)
Sets the wxSizerFlags to have a border of a number of pixels specified by borderinpixels with the directions specified by direction.
In the overloaded version without borderinpixels parameter, the border of default size, as returned by GetDefaultBorder, is used.
wxSizerFlags& Center()
Sets the object of the wxSizerFlags to center itself in the area it is given.
wxSizerFlags& Centre()
wxSizerFlags::Center for people with the other dialect of english.
wxSizerFlags& DoubleBorder(int direction = wxALL)
Sets the border in the given direction having twice the default border size.
wxSizerFlags& DoubleHorzBorder()
Sets the border in left and right directions having twice the default border size.
wxSizerFlags& Expand()
Sets the object of the wxSizerFlags to expand to fill as much area as it can.
static int GetDefaultBorder()
Returns the border used by default in Border method.
wxSizerFlags& Left()
Aligns the object to the left, shortcut for Align(wxALIGN_LEFT)
See also
wxSizerFlags& FixedMinSize()
Set the wxFIXED_MINSIZE flag which indicates that the initial size of the window should be also set as its minimal size.
wxSizerFlags& Proportion(int proportion = 0)
Sets the proportion of this wxSizerFlags to proportion
wxSizerFlags& Right()
Aligns the object to the right, shortcut for Align(wxALIGN_RIGHT)
See also
wxSizerFlags& Shaped()
Set the wx_SHAPED flag which indicates that the elements should always keep the fixed width to height ratio equal to its original value.
wxSizerFlags& TripleBorder(int direction = wxALL)
Sets the border in the given direction having thrice the default border size.