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