]> git.saurik.com Git - wxWidgets.git/commitdiff
Make the CreateTool factories be public so they can be used from application code
authorRobin Dunn <robin@alldunn.com>
Sat, 10 Mar 2012 00:01:09 +0000 (00:01 +0000)
committerRobin Dunn <robin@alldunn.com>
Sat, 10 Mar 2012 00:01:09 +0000 (00:01 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/gtk/toolbar.h
include/wx/msw/toolbar.h
include/wx/osx/toolbar.h
include/wx/tbarbase.h
interface/wx/toolbar.h

index ca8699031a3d6ddf7c166955c454343a46766736..8326870f49dd99244e848d01fad4c399e99363ed 100644 (file)
@@ -58,6 +58,17 @@ public:
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
 
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
 
+    virtual wxToolBarToolBase *CreateTool(int id,
+                                          const wxString& label,
+                                          const wxBitmap& bitmap1,
+                                          const wxBitmap& bitmap2 = wxNullBitmap,
+                                          wxItemKind kind = wxITEM_NORMAL,
+                                          wxObject *clientData = NULL,
+                                          const wxString& shortHelpString = wxEmptyString,
+                                          const wxString& longHelpString = wxEmptyString);
+    virtual wxToolBarToolBase *CreateTool(wxControl *control,
+                                          const wxString& label);
+
     // implementation from now on
     // --------------------------
 
     // implementation from now on
     // --------------------------
 
@@ -73,17 +84,6 @@ protected:
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
-    virtual wxToolBarToolBase *CreateTool(int id,
-                                          const wxString& label,
-                                          const wxBitmap& bitmap1,
-                                          const wxBitmap& bitmap2,
-                                          wxItemKind kind,
-                                          wxObject *clientData,
-                                          const wxString& shortHelpString,
-                                          const wxString& longHelpString);
-    virtual wxToolBarToolBase *CreateTool(wxControl *control,
-                                          const wxString& label);
-
 private:
     void Init();
     void GtkSetStyle();
 private:
     void Init();
     void GtkSetStyle();
index 4f45e4038437c106f924ab8e2c9fb30e560c5ac8..fcfbec774be7b94a9fad4514c257ac9fd2ce86d1 100644 (file)
@@ -85,6 +85,17 @@ public:
     virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindowMSW *child);
 #endif // wxHAS_MSW_BACKGROUND_ERASE_HOOK
 
     virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindowMSW *child);
 #endif // wxHAS_MSW_BACKGROUND_ERASE_HOOK
 
+    virtual wxToolBarToolBase *CreateTool(int id,
+                                          const wxString& label,
+                                          const wxBitmap& bmpNormal,
+                                          const wxBitmap& bmpDisabled = wxNullBitmap,
+                                          wxItemKind kind = wxITEM_NORMAL,
+                                          wxObject *clientData = NULL,
+                                          const wxString& shortHelp = wxEmptyString,
+                                          const wxString& longHelp = wxEmptyString);
+
+    virtual wxToolBarToolBase *CreateTool(wxControl *control,
+                                          const wxString& label);
 protected:
     // common part of all ctors
     void Init();
 protected:
     // common part of all ctors
     void Init();
@@ -103,18 +114,6 @@ protected:
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
-    virtual wxToolBarToolBase *CreateTool(int id,
-                                          const wxString& label,
-                                          const wxBitmap& bmpNormal,
-                                          const wxBitmap& bmpDisabled,
-                                          wxItemKind kind,
-                                          wxObject *clientData,
-                                          const wxString& shortHelp,
-                                          const wxString& longHelp);
-
-    virtual wxToolBarToolBase *CreateTool(wxControl *control,
-                                          const wxString& label);
-
     // return the appropriate size and flags for the toolbar control
     virtual wxSize DoGetBestSize() const;
 
     // return the appropriate size and flags for the toolbar control
     virtual wxSize DoGetBestSize() const;
 
index 5e20bc6768f0feda2a6485cfb470507b9da65f8e..4bed1ab647448c6a7fd3de49dbebb0367db740c7 100644 (file)
@@ -77,6 +77,18 @@ class WXDLLIMPEXP_CORE wxToolBar: public wxToolBarBase
     bool MacWantsNativeToolbar();
     bool MacTopLevelHasNativeToolbar(bool *ownToolbarInstalled) const;
 #endif
     bool MacWantsNativeToolbar();
     bool MacTopLevelHasNativeToolbar(bool *ownToolbarInstalled) const;
 #endif
+
+    virtual wxToolBarToolBase *CreateTool(int id,
+                                          const wxString& label,
+                                          const wxBitmap& bmpNormal,
+                                          const wxBitmap& bmpDisabled = wxNullBitmap,
+                                          wxItemKind kind = wxITEM_NORMAL,
+                                          wxObject *clientData = NULL,
+                                          const wxString& shortHelp = wxEmptyString,
+                                          const wxString& longHelp = wxEmptyString);
+    virtual wxToolBarToolBase *CreateTool(wxControl *control,
+                                          const wxString& label);
+
 protected:
     // common part of all ctors
     void Init();
 protected:
     // common part of all ctors
     void Init();
@@ -99,17 +111,6 @@ protected:
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
-    virtual wxToolBarToolBase *CreateTool(int id,
-                                          const wxString& label,
-                                          const wxBitmap& bmpNormal,
-                                          const wxBitmap& bmpDisabled,
-                                          wxItemKind kind,
-                                          wxObject *clientData,
-                                          const wxString& shortHelp,
-                                          const wxString& longHelp);
-    virtual wxToolBarToolBase *CreateTool(wxControl *control,
-                                          const wxString& label);
-
     DECLARE_EVENT_TABLE()
 #if wxOSX_USE_NATIVE_TOOLBAR
     bool m_macUsesNativeToolbar ;
     DECLARE_EVENT_TABLE()
 #if wxOSX_USE_NATIVE_TOOLBAR
     bool m_macUsesNativeToolbar ;
index 45e5ac4cb565bc3f8898bb3df5570ae9a4d0d0c4..b368ff8c9e8758a717e6e4e97b4246c15c834b4a 100644 (file)
@@ -567,6 +567,33 @@ public:
     // use GetToolMargins() instead
     wxSize GetMargins() const { return GetToolMargins(); }
 
     // use GetToolMargins() instead
     wxSize GetMargins() const { return GetToolMargins(); }
 
+    // Tool factories,
+    // helper functions to create toolbar tools
+    // -------------------------
+    virtual wxToolBarToolBase *CreateTool(int toolid,
+                                          const wxString& label,
+                                          const wxBitmap& bmpNormal,
+                                          const wxBitmap& bmpDisabled = wxNullBitmap,
+                                          wxItemKind kind = wxITEM_NORMAL,
+                                          wxObject *clientData = NULL,
+                                          const wxString& shortHelp = wxEmptyString,
+                                          const wxString& longHelp = wxEmptyString) = 0;
+
+    virtual wxToolBarToolBase *CreateTool(wxControl *control,
+                                          const wxString& label) = 0;
+
+    // this one is not virtual but just a simple helper/wrapper around
+    // CreateTool() for separators
+    wxToolBarToolBase *CreateSeparator()
+    {
+        return CreateTool(wxID_SEPARATOR,
+                          wxEmptyString,
+                          wxNullBitmap, wxNullBitmap,
+                          wxITEM_SEPARATOR, NULL,
+                          wxEmptyString, wxEmptyString);
+    }
+
+    
     // implementation only from now on
     // -------------------------------
 
     // implementation only from now on
     // -------------------------------
 
@@ -618,29 +645,6 @@ protected:
     // called when the tools "can be toggled" flag changes
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle) = 0;
 
     // called when the tools "can be toggled" flag changes
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle) = 0;
 
-    // the functions to create toolbar tools
-    virtual wxToolBarToolBase *CreateTool(int toolid,
-                                          const wxString& label,
-                                          const wxBitmap& bmpNormal,
-                                          const wxBitmap& bmpDisabled,
-                                          wxItemKind kind,
-                                          wxObject *clientData,
-                                          const wxString& shortHelp,
-                                          const wxString& longHelp) = 0;
-
-    virtual wxToolBarToolBase *CreateTool(wxControl *control,
-                                          const wxString& label) = 0;
-
-    // this one is not virtual but just a simple helper/wrapper around
-    // CreateTool() for separators
-    wxToolBarToolBase *CreateSeparator()
-    {
-        return CreateTool(wxID_SEPARATOR,
-                          wxEmptyString,
-                          wxNullBitmap, wxNullBitmap,
-                          wxITEM_SEPARATOR, NULL,
-                          wxEmptyString, wxEmptyString);
-    }
 
     // helper functions
     // ----------------
 
     // helper functions
     // ----------------
index e0afc16cd95d31e6d9fe095eadd181075a58bfb2..66af57a78ffc1131817ca0ee7358d7d0021f1c86 100644 (file)
@@ -976,5 +976,28 @@ public:
             tool.
     */
     virtual void ToggleTool(int toolId, bool toggle);
             tool.
     */
     virtual void ToggleTool(int toolId, bool toggle);
+
+
+    /**
+       Factory function to create a new toolbar tool.
+    */
+    virtual wxToolBarToolBase *CreateTool(int toolid,
+                                          const wxString& label,
+                                          const wxBitmap& bmpNormal,
+                                          const wxBitmap& bmpDisabled = wxNullBitmap,
+                                          wxItemKind kind = wxITEM_NORMAL,
+                                          wxObject *clientData = NULL,
+                                          const wxString& shortHelp = wxEmptyString,
+                                          const wxString& longHelp = wxEmptyString);
+    /**
+       Factory function to create a new control toolbar tool.
+    */
+    virtual wxToolBarToolBase *CreateTool(wxControl *control,
+                                          const wxString& label);
+
+    /**
+       Factory function to create a new separator toolbar tool.
+    */
+    wxToolBarToolBase *CreateSeparator()
 };
 
 };