1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: interface of wxWrapSizer
4 // Author: wxWidgets team
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
11 @wxheader{wrapsizer.h}
13 A wrap sizer lays out its items in a single line, like a box sizer -- as long
14 as there is space available in that direction. Once all available space in
15 the primary direction has been used, a new line is added and items are added
18 So a wrap sizer has a primary orientation for adding items, and adds lines
19 as needed in the secondary direction.
24 @see wxBoxSizer, wxSizer, @ref overview_sizeroverview "Sizer overview"
26 class wxWrapSizer
: public wxBoxSizer
30 Constructor for a wxWrapSizer. @a orient determines the primary direction of
31 the sizer (the most common case being @c wxHORIZONTAL). The flags
32 parameter can be a combination of the values @c
33 wxEXTEND_LAST_ON_EACH_LINE which will cause the last item on each line
34 to use any remaining space on that line and @c wxREMOVE_LEADING_SPACES
35 which removes any spacer elements from the beginning of a row. Both of
36 these flags are on by default.
38 wxWrapSizer(int orient
= wxHORIZONTAL
,
39 int flags
= wxEXTEND_LAST_ON_EACH_LINE
|
40 wxREMOVE_LEADING_SPACES
);
43 Not used by an application. This is the mechanism by which sizers can inform
44 sub-items of the first determined size component. The sub-item can then better
45 determine its size requirements.
46 Returns @true if the information was used (and the sub-item min size was
49 bool InformFirstDirection(int direction
, int size
,
50 int availableOtherDir
);
54 Can be overridden in the derived classes to treat some normal items as
57 This method is used to determine whether the given @a item should be
58 considered to be a spacer for the purposes of @c wxREMOVE_LEADING_SPACES
59 implementation. By default only returns @true for the real spacers.
61 virtual bool IsSpaceItem(wxSizerItem
*item
) const;