]> git.saurik.com Git - wxWidgets.git/commitdiff
added shortcut functions AddSpacer and AddStretchSpacer (plus Prepend and Insert...
authorDimitri Schoolwerth <dimitri.schoolwerth@gmail.com>
Sun, 25 Jul 2004 16:37:48 +0000 (16:37 +0000)
committerDimitri Schoolwerth <dimitri.schoolwerth@gmail.com>
Sun, 25 Jul 2004 16:37:48 +0000 (16:37 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/sizer.tex
include/wx/sizer.h
src/common/sizer.cpp

index fcb072378cde3cb7087619a721608fc4e1a3357d..4c0c69cf1a1d3781a4c90f935bcb47f7540ae09c 100644 (file)
@@ -11,12 +11,12 @@ The layout algorithm used by sizers in wxWidgets is closely related to layout
 in other GUI toolkits, such as Java's AWT, the GTK toolkit or the Qt toolkit. It is
 based upon the idea of the individual subwindows reporting their minimal required
 size and their ability to get stretched if the size of the parent window has changed.
-This will most often mean, that the programmer does not set the original size of
-a dialog in the beginning, rather the dialog will assigned a sizer and this sizer
+This will most often mean that the programmer does not set the original size of
+a dialog in the beginning, rather the dialog will be assigned a sizer and this sizer
 will be queried about the recommended size. The sizer in turn will query its
 children, which can be normal windows, empty space or other sizers, so that
 a hierarchy of sizers can be constructed. Note that wxSizer does not derive from wxWindow
-and thus do not interfere with tab ordering and requires very little resources compared
+and thus does not interfere with tab ordering and requires very little resources compared
 to a real window on screen.
 
 What makes sizers so well fitted for use in wxWidgets is the fact that every control
@@ -31,7 +31,8 @@ capabilities for the various virtual methods.}
 
 \wxheading{Derived from}
 
-\helpref{wxObject}{wxobject}
+\helpref{wxObject}{wxobject}\\
+\helpref{wxClientDataContainer}{wxclientdatacontainer}
 
 \wxheading{See also}
 
@@ -138,6 +139,22 @@ item, for use in derived classes when sizing information is more
 complex than the {\it proportion} and {\it flag} will allow for.}
 
 
+\membersection{wxSizer::AddSpacer}\label{wxsizeraddspacer}
+
+\func{void}{AddSpacer}{\param{int }{size}}
+
+Adds non-stretchable space to the sizer. More readable way of calling
+\helpref{Add}{wxsizeradd}(size, size, 0).
+
+
+\membersection{wxSizer::AddStretchSpacer}\label{wxsizeraddstretchspacer}
+
+\func{void}{AddStretchSpacer}{\param{int }{prop = 1}}
+
+Adds stretchable space to the sizer. More readable way of calling
+\helpref{Add}{wxsizeradd}(0, 0, prop).
+
+
 \membersection{wxSizer::CalcMin}\label{wxsizercalcmin}
 
 \func{wxSize}{CalcMin}{\void}
@@ -231,6 +248,22 @@ Insert a child into the sizer before any existing item at {\it index}.
 See \helpref{wxSizer::Add}{wxsizeradd} for the meaning of the other parameters.
 
 
+\membersection{wxSizer::InsertSpacer}\label{wxsizerinsertspacer}
+
+\func{void}{InsertSpacer}{\param{size\_t }{index}, \param{int }{size}}
+
+Inserts non-stretchable space to the sizer. More readable way of calling
+\helpref{Insert}{wxsizerinsert}(size, size, 0).
+
+
+\membersection{wxSizer::InsertStretchSpacer}\label{wxsizerinsertstretchspacer}
+
+\func{void}{InsertStretchSpacer}{\param{size\_t }{index}, \param{int }{prop = 1}}
+
+Inserts stretchable space to the sizer. More readable way of calling
+\helpref{Insert}{wxsizerinsert}(0, 0, prop).
+
+
 \membersection{wxSizer::Layout}\label{wxsizerlayout}
 
 \func{void}{Layout}{\void}
@@ -252,6 +285,22 @@ Same as \helpref{wxSizer::Add}{wxsizeradd}, but prepends the items to the beginn
 list of items (windows, subsizers or spaces) owned by this sizer.
 
 
+\membersection{wxSizer::PrependSpacer}\label{wxsizerprependspacer}
+
+\func{void}{PrependSpacer}{\param{int }{size}}
+
+Prepends non-stretchable space to the sizer. More readable way of calling
+\helpref{Prepend}{wxsizerprepend}(size, size, 0).
+
+
+\membersection{wxSizer::PrependStretchSpacer}\label{wxsizerprependstretchspacer}
+
+\func{void}{PrepentStretchSpacer}{\param{int }{prop = 1}}
+
+Prepends stretchable space to the sizer. More readable way of calling
+\helpref{Prepend}{wxsizerprepend}(0, 0, prop).
+
+
 \membersection{wxSizer::RecalcSizes}\label{wxsizerrecalcsizes}
 
 \func{void}{RecalcSizes}{\void}
index f1dbcdf4656b8b72b0ed8f51b83273abdf640640..ade5aea7480eee617098acabd81141c769a18842 100644 (file)
@@ -198,6 +198,9 @@ public:
                       wxObject* userData = NULL );
     virtual void Add( wxSizerItem *item );
 
+    virtual void AddSpacer(int size);
+    virtual void AddStretchSpacer(int prop = 1);
+
     virtual void Insert( size_t index,
                          wxWindow *window,
                          int proportion = 0,
@@ -220,6 +223,9 @@ public:
     virtual void Insert( size_t index,
                          wxSizerItem *item );
 
+    virtual void InsertSpacer(size_t index, int size);
+    virtual void InsertStretchSpacer(size_t index, int prop = 1);
+
     virtual void Prepend( wxWindow *window,
                           int proportion = 0,
                           int flag = 0,
@@ -238,6 +244,9 @@ public:
                           wxObject* userData = NULL );
     virtual void Prepend( wxSizerItem *item );
 
+    virtual void PrependSpacer(int size);
+    virtual void PrependStretchSpacer(int prop = 1);
+
     // Deprecated in 2.6 since historically it does not delete the window,
     // use Detach instead.
     wxDEPRECATED( virtual bool Remove( wxWindow *window ) );
@@ -549,7 +558,7 @@ public:
 
 protected:
     // this protected ctor lets us mark the real one above as deprecated
-    // and still has warning-free build of the library itself:
+    // and still have warning-free build of the library itself:
     wxBookCtrlSizer() {}
     
     wxBookCtrl *m_bookctrl;
index f21543c1209b2710011b233e47aae736dd84fd25..b171d66ae5e5d3b6d5e937d1ebd465c6d218dac8 100644 (file)
@@ -366,6 +366,16 @@ void wxSizer::Add( wxSizerItem *item )
         item->GetWindow()->SetContainingSizer( this );
 }
 
+void wxSizer::AddSpacer(int size)
+{
+    Add(size, size);
+}
+
+void wxSizer::AddStretchSpacer(int prop)
+{
+    Add(0, 0, prop);
+}
+
 void wxSizer::Prepend( wxWindow *window, int proportion, int flag, int border, wxObject* userData )
 {
     m_children.Insert( new wxSizerItem( window, proportion, flag, border, userData ) );
@@ -390,6 +400,16 @@ void wxSizer::Prepend( wxSizerItem *item )
         item->GetWindow()->SetContainingSizer( this );
 }
 
+void wxSizer::PrependSpacer(int size)
+{
+    Prepend(size, size);
+}
+
+void wxSizer::PrependStretchSpacer(int prop)
+{
+    Prepend(0, 0, prop);
+}
+
 void wxSizer::Insert( size_t index,
                       wxWindow *window,
                       int proportion,
@@ -433,6 +453,16 @@ void wxSizer::Insert( size_t index, wxSizerItem *item )
         item->GetWindow()->SetContainingSizer( this );
 }
 
+void wxSizer::InsertSpacer(size_t index, int size)
+{
+    Insert(index, size, size);
+}
+
+void wxSizer::InsertStretchSpacer(size_t index, int prop)
+{
+    Insert(index, 0, 0, prop);
+}
+
 bool wxSizer::Remove( wxWindow *window )
 {
     return Detach( window );