X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/aa61d3525370a9b9fa8c797d9b7f89d96994db5f..bc07ab17bf5370f452e899128bf89cc7ca7b98f0:/include/wx/ctrlsub.h diff --git a/include/wx/ctrlsub.h b/include/wx/ctrlsub.h index d27f0102ed..9939f9a7df 100644 --- a/include/wx/ctrlsub.h +++ b/include/wx/ctrlsub.h @@ -144,6 +144,7 @@ protected: virtual void DoSetItemClientObject(unsigned int n, wxClientData* clientData) = 0; virtual wxClientData* DoGetItemClientObject(unsigned int n) const = 0; + // the type of the client data for the items wxClientDataType m_clientDataItemsType; }; @@ -154,13 +155,13 @@ protected: // two versions #define wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST \ void SetClientData(void *data) \ - { wxControl::SetClientData(data); } \ + { wxEvtHandler::SetClientData(data); } \ void *GetClientData() const \ - { return wxControl::GetClientData(); } \ + { return wxEvtHandler::GetClientData(); } \ void SetClientObject(wxClientData *data) \ - { wxControl::SetClientObject(data); } \ + { wxEvtHandler::SetClientObject(data); } \ wxClientData *GetClientObject() const \ - { return wxControl::GetClientObject(); } \ + { return wxEvtHandler::GetClientObject(); } \ void SetClientData(unsigned int n, void* clientData) \ { wxItemContainer::SetClientData(n, clientData); } \ void* GetClientData(unsigned int n) const \ @@ -188,14 +189,11 @@ public: virtual bool ShouldInheritColours() const { return false; } protected: - // we can't compute our best size before the items are added to the control - // which is done after calling SetInitialBestSize() (it is called from the - // base class ctor and the items are added in the derived class ctor), so - // don't do anything at all here as our size will be changed later anyhow + // fill in the client object or data field of the event as appropriate // - // of course, all derived classes *must* call SetBestSize() from their - // ctors for this to work! - virtual void SetInitialBestSize(const wxSize& WXUNUSED(size)) { } + // calls InitCommandEvent() and, if n != wxNOT_FOUND, also sets the per + // item client data + void InitCommandEventWithItems(wxCommandEvent& event, int n); private: DECLARE_ABSTRACT_CLASS(wxControlWithItems)