X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f80ea77b4a8bac4ab005bfc592f9cd3262ffa397..9419b0d64948485ab83122484ffe4b7dcde25905:/src/xrc/xh_toolb.cpp

diff --git a/src/xrc/xh_toolb.cpp b/src/xrc/xh_toolb.cpp
index 7e44ab77a1..62dd770716 100644
--- a/src/xrc/xh_toolb.cpp
+++ b/src/xrc/xh_toolb.cpp
@@ -8,10 +8,6 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation "xh_toolb.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
@@ -19,12 +15,12 @@
     #pragma hdrstop
 #endif
 
+#if wxUSE_XRC && wxUSE_TOOLBAR
+
 #include "wx/xrc/xh_toolb.h"
 #include "wx/toolbar.h"
 #include "wx/frame.h"
 
-#if wxUSE_TOOLBAR
-
 IMPLEMENT_DYNAMIC_CLASS(wxToolBarXmlHandler, wxXmlResourceHandler)
 
 wxToolBarXmlHandler::wxToolBarXmlHandler()
@@ -39,6 +35,8 @@ wxToolBarXmlHandler::wxToolBarXmlHandler()
     XRC_ADD_STYLE(wxTB_NOICONS);
     XRC_ADD_STYLE(wxTB_NODIVIDER);
     XRC_ADD_STYLE(wxTB_NOALIGN);
+    XRC_ADD_STYLE(wxTB_HORZ_LAYOUT);
+    XRC_ADD_STYLE(wxTB_HORZ_TEXT);
     AddWindowStyles();
 }
 
@@ -78,6 +76,9 @@ wxObject *wxToolBarXmlHandler::DoCreateResource()
                                kind,
                                GetText(wxT("tooltip")),
                                GetText(wxT("longhelp")));
+
+            if ( GetBool(wxT("disabled")) )
+                m_toolbar->EnableTool(GetID(), false);
         }
         return m_toolbar; // must return non-NULL
     }
@@ -117,6 +118,8 @@ wxObject *wxToolBarXmlHandler::DoCreateResource()
         long separation = GetLong(wxT("separation"), -1);
         if (separation != -1)
             toolbar->SetToolSeparation(separation);
+        if (HasParam(wxT("bg")))
+            toolbar->SetBackgroundColour(GetColour(wxT("bg")));
 
         wxXmlNode *children_node = GetParamNode(wxT("object"));
         if (!children_node)
@@ -167,4 +170,4 @@ bool wxToolBarXmlHandler::CanHandle(wxXmlNode *node)
             (m_isInside && IsOfClass(node, wxT("separator"))));
 }
 
-#endif
+#endif // wxUSE_XRC && wxUSE_TOOLBAR