]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/src/xml/xh_notbk.cpp
added new controls: wxBitmapButton, wxCalendarCtrl, wxListCtrl, wxScrollBar, wxStatic...
[wxWidgets.git] / contrib / src / xml / xh_notbk.cpp
index 30b4b6322a91cb62c67ac79ed2e34264f60fcc24..3c7bed28f8187e90de3900dee62b8c30f8c78f13 100644 (file)
@@ -1,6 +1,6 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        xh_notbk.cpp
-// Purpose:     XML resource for wxBoxSizer
+// Purpose:     XML resource for wxNotebook
 // Author:      Vaclav Slavik
 // Created:     2000/03/21
 // RCS-ID:      $Id$
@@ -25,6 +25,7 @@
 
 #include "wx/log.h"
 #include "wx/notebook.h"
+#include "wx/sizer.h"
 
 wxNotebookXmlHandler::wxNotebookXmlHandler() 
 : wxXmlResourceHandler(), m_IsInside(FALSE), m_Notebook(NULL)
@@ -33,19 +34,20 @@ wxNotebookXmlHandler::wxNotebookXmlHandler()
     ADD_STYLE(wxNB_LEFT);
     ADD_STYLE(wxNB_RIGHT);
     ADD_STYLE(wxNB_BOTTOM);
+    AddWindowStyles();
 }
 
 
 
 wxObject *wxNotebookXmlHandler::DoCreateResource()
 { 
-    if (m_Node->GetName() == _T("page"))
+    if (m_Node->GetName() == _T("notebookpage"))
     {
-        wxXmlNode *n = GetParamNode(_T("child"))->GetChildren();
+        wxXmlNode *n = GetParamNode(_T("window"))->GetChildren();
         while (n)
         {
             if (n->GetType() == wxXML_ELEMENT_NODE)
-            {        
+            {
                 bool old_ins = m_IsInside;
                 m_IsInside = FALSE;
                 m_IsInside = old_ins;
@@ -53,7 +55,7 @@ wxObject *wxNotebookXmlHandler::DoCreateResource()
                 wxWindow *wnd = wxDynamicCast(item, wxWindow);
                 
                 if (wnd)
-                    m_Notebook->AddPage(wnd, GetText(_T("label")), 
+                    m_Notebook->AddPage(wnd, GetText(_T("label")),
                                              GetBool(_T("selected"), 0));
                 else 
                     wxLogError(_T("Error in resource."));              
@@ -79,8 +81,11 @@ wxObject *wxNotebookXmlHandler::DoCreateResource()
         CreateChildren(m_Notebook, TRUE/*only this handler*/);
         m_IsInside = old_ins;
         m_Notebook = old_par;
-        
-        return nb;
+
+        if (GetBool(_T("usenotebooksizer"), FALSE))
+            return new wxNotebookSizer(nb);
+        else
+            return nb;
     }
 }
 
@@ -89,7 +94,7 @@ wxObject *wxNotebookXmlHandler::DoCreateResource()
 bool wxNotebookXmlHandler::CanHandle(wxXmlNode *node)
 {
     return ((!m_IsInside && node->GetName() == _T("notebook")) ||
-            (m_IsInside && node->GetName() == _T("page")));
+            (m_IsInside && node->GetName() == _T("notebookpage")));
 }
 
 #endif