]> git.saurik.com Git - wxWidgets.git/commitdiff
added growable cols and rows to wxFlexGridSizer XRC handler
authorVáclav Slavík <vslavik@fastmail.fm>
Sat, 25 Nov 2000 23:13:57 +0000 (23:13 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sat, 25 Nov 2000 23:13:57 +0000 (23:13 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

contrib/src/xml/xh_sizer.cpp
contrib/utils/wxrcedit/df/wxBoxSizer.df
contrib/utils/wxrcedit/df/wxFlexGridSizer.df

index 5b9bd3d4364cff180f904b4c9b219ed83dd722d9..ae7cda12f1c4d567faa68a4300e9145488db22db 100644 (file)
@@ -24,6 +24,7 @@
 #include "wx/log.h"
 #include "wx/statbox.h"
 #include "wx/notebook.h"
+#include "wx/tokenzr.h"
 
 bool wxSizerXmlHandler::IsSizerNode(wxXmlNode *node)
 {
@@ -152,14 +153,35 @@ wxObject *wxSizerXmlHandler::DoCreateResource()
                                     GetDimension(_T("vgap")), GetDimension(_T("hgap")));
                                     
         else if (m_Class == _T("wxFlexGridSizer"))
-            sizer = new wxFlexGridSizer(GetLong(_T("rows")), GetLong(_T("cols")),
-                                    GetDimension(_T("vgap")), GetDimension(_T("hgap")));
+        {
+            wxFlexGridSizer *fsizer = 
+                  new wxFlexGridSizer(GetLong(_T("rows")), GetLong(_T("cols")),
+                      GetDimension(_T("vgap")), GetDimension(_T("hgap")));
+            sizer = fsizer;
+            wxStringTokenizer tkn;
+            unsigned long l;
+            tkn.SetString(GetParamValue(_T("growablerows")), _T(","));
+            while (tkn.HasMoreTokens())
+            {
+                if (!tkn.GetNextToken().ToULong(&l))
+                    wxLogError(_T("growablerows must be comma-separated list of row numbers"));
+                else
+                    fsizer->AddGrowableRow(l);
+            }
+            tkn.SetString(GetParamValue(_T("growablecols")), _T(","));
+            while (tkn.HasMoreTokens())
+            {
+                if (!tkn.GetNextToken().ToULong(&l))
+                    wxLogError(_T("growablecols must be comma-separated list of column numbers"));
+                else
+                    fsizer->AddGrowableCol(l);
+            }
+        }
 
         wxSize minsize = GetSize(_T("minsize"));
         if (!(minsize == wxDefaultSize))
             sizer->SetMinSize(minsize);
 
-
         wxSizer *old_par = m_ParentSizer;
         m_ParentSizer = sizer;
         bool old_ins = m_IsInside;
index 214ae7dcd97284b923aba4e481bd19a63189e0d5..50b38a2dd4caa6a0c6ddf8ce38ee11bdd0b37864 100644 (file)
@@ -3,5 +3,5 @@ type sizer
 icon 0
 childtype sizer_item
 derived from panel_item
-var orient of flags wxHORIZONTAL,wxVERTICAL
+var orient of choice wxHORIZONTAL,wxVERTICAL
 var minsize of coord
index dfb093dd54dabcb91fa5c43ecee11514d8644fd1..67875196767eff231f4bb630405fc4d8aaa8ad78 100644 (file)
@@ -8,3 +8,6 @@ var cols of integer
 var vgap of dimension
 var hgap of dimension
 var minsize of coord
+var growablecols of text
+var growablerows of text
+