added wxToolBar::SetToolClientData

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
1999-12-17 13:10:05 +00:00
parent b7c2b5c51d
commit 6fd5fa4fcc
3 changed files with 61 additions and 28 deletions

View File

@@ -140,10 +140,14 @@ public:
wxObject *GetClientData() const
{
wxASSERT_MSG( m_toolStyle != wxTOOL_STYLE_CONTROL,
_T("this toolbar tool doesn't have client data") );
return m_clientData;
if ( m_toolStyle == wxTOOL_STYLE_CONTROL )
{
return m_control->GetClientData();
}
else
{
return m_clientData;
}
}
// modifiers: return TRUE if the state really changed
@@ -158,6 +162,18 @@ public:
void SetBitmap1(const wxBitmap& bmp) { m_bitmap1 = bmp; }
void SetBitmap2(const wxBitmap& bmp) { m_bitmap2 = bmp; }
void SetClientData(wxObject *clientData)
{
if ( m_toolStyle == wxTOOL_STYLE_CONTROL )
{
m_control->SetClientData(clientData);
}
else
{
m_clientData = clientData;
}
}
// add tool to/remove it from a toolbar
virtual void Detach() { m_tbar = (wxToolBarBase *)NULL; }
virtual void Attach(wxToolBarBase *tbar) { m_tbar = tbar; }
@@ -284,7 +300,9 @@ public:
// Set this to be togglable (or not)
virtual void SetToggle(int id, bool toggle);
virtual wxObject *GetToolClientData(int index) const;
// set/get tools client data (not for controls)
virtual wxObject *GetToolClientData(int id) const;
virtual void SetToolClientData(int id, wxObject *clientData);
// return TRUE if the tool is toggled
virtual bool GetToolState(int id) const;