Make the CreateTool factories be public so they can be used from application code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -58,6 +58,17 @@ public:
|
|||||||
static wxVisualAttributes
|
static wxVisualAttributes
|
||||||
GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
|
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 DoToggleTool(wxToolBarToolBase *tool, bool toggle);
|
||||||
virtual void DoSetToggle(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:
|
private:
|
||||||
void Init();
|
void Init();
|
||||||
void GtkSetStyle();
|
void GtkSetStyle();
|
||||||
|
@@ -85,6 +85,17 @@ public:
|
|||||||
virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindowMSW *child);
|
virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindowMSW *child);
|
||||||
#endif // wxHAS_MSW_BACKGROUND_ERASE_HOOK
|
#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:
|
protected:
|
||||||
// common part of all ctors
|
// common part of all ctors
|
||||||
void Init();
|
void Init();
|
||||||
@@ -103,18 +114,6 @@ protected:
|
|||||||
virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
|
virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
|
||||||
virtual void DoSetToggle(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
|
// return the appropriate size and flags for the toolbar control
|
||||||
virtual wxSize DoGetBestSize() const;
|
virtual wxSize DoGetBestSize() const;
|
||||||
|
|
||||||
|
@@ -77,6 +77,18 @@ class WXDLLIMPEXP_CORE wxToolBar: public wxToolBarBase
|
|||||||
bool MacWantsNativeToolbar();
|
bool MacWantsNativeToolbar();
|
||||||
bool MacTopLevelHasNativeToolbar(bool *ownToolbarInstalled) const;
|
bool MacTopLevelHasNativeToolbar(bool *ownToolbarInstalled) const;
|
||||||
#endif
|
#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:
|
protected:
|
||||||
// common part of all ctors
|
// common part of all ctors
|
||||||
void Init();
|
void Init();
|
||||||
@@ -99,17 +111,6 @@ protected:
|
|||||||
virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
|
virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
|
||||||
virtual void DoSetToggle(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()
|
DECLARE_EVENT_TABLE()
|
||||||
#if wxOSX_USE_NATIVE_TOOLBAR
|
#if wxOSX_USE_NATIVE_TOOLBAR
|
||||||
bool m_macUsesNativeToolbar ;
|
bool m_macUsesNativeToolbar ;
|
||||||
|
@@ -567,6 +567,33 @@ public:
|
|||||||
// use GetToolMargins() instead
|
// use GetToolMargins() instead
|
||||||
wxSize GetMargins() const { return GetToolMargins(); }
|
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
|
// called when the tools "can be toggled" flag changes
|
||||||
virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle) = 0;
|
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
|
||||||
// ----------------
|
// ----------------
|
||||||
|
@@ -976,5 +976,28 @@ public:
|
|||||||
tool.
|
tool.
|
||||||
*/
|
*/
|
||||||
virtual void ToggleTool(int toolId, bool toggle);
|
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()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user