+ wxSizer();
+ ~wxSizer();
+
+ /* These should be called Append() really. */
+ virtual void Add( wxWindow *window, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+ virtual void Add( wxSizer *sizer, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+ virtual void Add( int width, int height, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+
+ virtual void Insert( int before, wxWindow *window, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+ virtual void Insert( int before, wxSizer *sizer, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+ virtual void Insert( int before, int width, int height, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+
+ virtual void Prepend( wxWindow *window, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+ virtual void Prepend( wxSizer *sizer, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+ virtual void Prepend( int width, int height, int option = 0, int flag = 0, int border = 0, wxObject* userData = NULL );
+
+ virtual bool Remove( wxWindow *window );
+ virtual bool Remove( wxSizer *sizer );
+ virtual bool Remove( int pos );
+
+ virtual void Clear( bool delete_windows=FALSE );
+ virtual void DeleteWindows();
+
+ void SetMinSize( int width, int height )
+ { DoSetMinSize( width, height ); }
+ void SetMinSize( wxSize size )
+ { DoSetMinSize( size.x, size.y ); }
+
+ /* Searches recursively */
+ bool SetItemMinSize( wxWindow *window, int width, int height )
+ { return DoSetItemMinSize( window, width, height ); }
+ bool SetItemMinSize( wxWindow *window, wxSize size )
+ { return DoSetItemMinSize( window, size.x, size.y ); }
+
+ /* Searches recursively */
+ bool SetItemMinSize( wxSizer *sizer, int width, int height )
+ { return DoSetItemMinSize( sizer, width, height ); }
+ bool SetItemMinSize( wxSizer *sizer, wxSize size )
+ { return DoSetItemMinSize( sizer, size.x, size.y ); }
+
+ bool SetItemMinSize( int pos, int width, int height )
+ { return DoSetItemMinSize( pos, width, height ); }
+ bool SetItemMinSize( int pos, wxSize size )
+ { return DoSetItemMinSize( pos, size.x, size.y ); }
+
+ wxSize GetSize()
+ { return m_size; }
+ wxPoint GetPosition()
+ { return m_position; }
+
+ /* Calculate the minimal size or return m_minSize if bigger. */
+ wxSize GetMinSize();
+
+ virtual void RecalcSizes() = 0;
+ virtual wxSize CalcMin() = 0;
+
+ virtual void Layout();
+
+ wxSize Fit( wxWindow *window );
+ void FitInside( wxWindow *window );
+ void SetSizeHints( wxWindow *window );
+ void SetVirtualSizeHints( wxWindow *window );
+
+ wxList& GetChildren()
+ { return m_children; }
+
+ void SetDimension( int x, int y, int width, int height );
+
+ // Manage whether individual windows or sub-sizers are considered
+ // in the layout calculations or not.
+ void Show( wxWindow *window, bool show = TRUE );
+ void Hide( wxWindow *window )
+ { Show (window, FALSE); }
+ void Show( wxSizer *sizer, bool show = TRUE );
+ void Hide( wxSizer *sizer )
+ { Show (sizer, FALSE); }
+
+ bool IsShown( wxWindow *window );
+ bool IsShown( wxSizer *sizer );
+
+ // Recursively call wxWindow::Show () on all sizer items.
+ void ShowItems (bool show);
+