wxSashLayoutWindow responds to OnCalculateLayout events generated by wxLayoutAlgorithm. It allows the application to use simple accessors to specify how the window should be laid out, rather than having to respond to events. The fact that the class derives from wxSashWindow allows sashes to be used if required, to allow the windows to be user-resizable.
The documentation for wxLayoutAlgorithm explains the purpose of this class in more detail.
This class handles the EVT_QUERY_LAYOUT_INFO and EVT_CALCULATE_LAYOUT events for you. However, if you use sashes, see wxSashWindow for relevant event information.
See also wxLayoutAlgorithm for information about the layout events.
wxLayoutAlgorithm, wxSashWindow, Event handling overview
wxSashLayoutWindow(wxSashLayoutWindow* parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxCLIP_CHILDREN | wxSW_3D, const wxString& name = "layoutWindow")
Constructs a sash layout window, which can be a child of a frame, dialog or any other non-control window.
bool Create(wxSashLayoutWindow* parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxCLIP_CHILDREN | wxSW_3D, const wxString& name = "layoutWindow")
Initializes a sash layout window, which can be a child of a frame, dialog or any other non-control window.
wxLayoutAlignment GetAlignment() const
Returns the alignment of the window: one of wxLAYOUT_TOP, wxLAYOUT_LEFT, wxLAYOUT_RIGHT, wxLAYOUT_BOTTOM.
wxLayoutOrientation GetOrientation() const
Returns the orientation of the window: one of wxLAYOUT_HORIZONTAL, wxLAYOUT_VERTICAL.
void OnCalculateLayout(wxCalculateLayoutEvent& event)
The default handler for the event that is generated by wxLayoutAlgorithm. The implementation of this function calls wxCalculateLayoutEvent::SetRect to shrink the provided size according to how much space this window takes up. For further details, see wxLayoutAlgorithm and wxCalculateLayoutEvent.
void OnQueryLayoutInfo(wxQueryLayoutInfoEvent& event)
The default handler for the event that is generated by OnCalculateLayout to get size, alignment and orientation information for the window. The implementation of this function uses member variables as set by accessors called by the application. For further details, see wxLayoutAlgorithm and wxQueryLayoutInfoEvent.
void SetAlignment(wxLayoutAlignment alignment)
Sets the alignment of the window (which edge of the available parent client area the window is attached to). alignment is one of wxLAYOUT_TOP, wxLAYOUT_LEFT, wxLAYOUT_RIGHT, wxLAYOUT_BOTTOM.
void SetDefaultSize(const wxSize& size)
Sets the default dimensions of the window. The dimension other than the orientation will be fixed to this value, and the orientation dimension will be ignored and the window stretched to fit the available space.
void SetOrientation(wxLayoutOrientation orientation)
Sets the orientation of the window (the direction the window will stretch in, to fill the available parent client area). orientation is one of wxLAYOUT_HORIZONTAL, wxLAYOUT_VERTICAL.