X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a236aa2058ccf3d36e9cafc20fa7375080c4be50..a721fd82b7ca8c97048453d4aaff559e8f741d69:/include/wx/htmllbox.h?ds=sidebyside diff --git a/include/wx/htmllbox.h b/include/wx/htmllbox.h index 89c06d29dc..22f453c83c 100644 --- a/include/wx/htmllbox.h +++ b/include/wx/htmllbox.h @@ -25,8 +25,8 @@ class WXDLLIMPEXP_FWD_HTML wxHtmlWinParser; class WXDLLIMPEXP_FWD_HTML wxHtmlListBoxCache; class WXDLLIMPEXP_FWD_HTML wxHtmlListBoxStyle; -extern WXDLLIMPEXP_DATA_HTML(const wxChar) wxHtmlListBoxNameStr[]; -extern WXDLLIMPEXP_DATA_HTML(const wxChar) wxSimpleHtmlListBoxNameStr[]; +extern WXDLLIMPEXP_DATA_HTML(const char) wxHtmlListBoxNameStr[]; +extern WXDLLIMPEXP_DATA_HTML(const char) wxSimpleHtmlListBoxNameStr[]; // ---------------------------------------------------------------------------- // wxHtmlListBox @@ -111,8 +111,11 @@ protected: virtual void OnDrawItem(wxDC& dc, const wxRect& rect, size_t n) const; virtual wxCoord OnMeasureItem(size_t n) const; - // This method may be overriden to handle clicking on a link in - // the listbox. By default, clicking links is ignored. + // override this one to draw custom background for selected items correctly + virtual void OnDrawBackground(wxDC& dc, const wxRect& rect, size_t n) const; + + // this method may be overridden to handle clicking on a link in the + // listbox (by default, clicks on links are simply ignored) virtual void OnLinkClicked(size_t n, const wxHtmlLinkInfo& link); // event handlers @@ -268,8 +271,8 @@ public: virtual void SetString(unsigned int n, const wxString& s); - virtual void DoClear(); - virtual void DoDeleteOneItem(unsigned int n); + // resolve ambiguity between wxItemContainer and wxVListBox versions + void Clear(); protected: virtual int DoInsertItems(const wxArrayStringsAdapter & items, @@ -282,10 +285,14 @@ protected: virtual void *DoGetItemClientData(unsigned int n) const { return m_HTMLclientData[n]; } + // wxItemContainer methods + virtual void DoClear(); + virtual void DoDeleteOneItem(unsigned int n); + // calls wxHtmlListBox::SetItemCount() and RefreshAll() void UpdateCount(); - // overload these functions just to change their visibility: users of + // override these functions just to change their visibility: users of // wxSimpleHtmlListBox shouldn't be allowed to call them directly! virtual void SetItemCount(size_t count) { wxHtmlListBox::SetItemCount(count); } @@ -295,6 +302,14 @@ protected: virtual wxString OnGetItem(size_t n) const { return m_items[n]; } + virtual void InitEvent(wxCommandEvent& event, int n) + { + // we're not a virtual control and we can include the string + // of the item which was clicked: + event.SetString(m_items[n]); + wxVListBox::InitEvent(event, n); + } + wxArrayString m_items; wxArrayPtrVoid m_HTMLclientData;