X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e52cd41e5d10a29632a8d2bc43a741357c9c7074..66c2bf7b1d9326fb650acfaae22ec50528cfbf7c:/include/wx/htmllbox.h?ds=inline diff --git a/include/wx/htmllbox.h b/include/wx/htmllbox.h index 21d354080c..27c3a36c30 100644 --- a/include/wx/htmllbox.h +++ b/include/wx/htmllbox.h @@ -4,7 +4,6 @@ // Author: Vadim Zeitlin // Modified by: // Created: 31.05.03 -// RCS-ID: $Id$ // Copyright: (c) 2003 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -25,8 +24,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 +110,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 @@ -182,7 +184,7 @@ private: DECLARE_EVENT_TABLE() - DECLARE_NO_COPY_CLASS(wxHtmlListBox) + wxDECLARE_NO_COPY_CLASS(wxHtmlListBox); }; @@ -193,9 +195,10 @@ private: #define wxHLB_DEFAULT_STYLE wxBORDER_SUNKEN #define wxHLB_MULTIPLE wxLB_MULTIPLE -class WXDLLIMPEXP_HTML wxSimpleHtmlListBox : public wxHtmlListBox, - public wxItemContainer +class WXDLLIMPEXP_HTML wxSimpleHtmlListBox : + public wxWindowWithItems { + DECLARE_ABSTRACT_CLASS(wxSimpleHtmlListBox) public: // wxListbox-compatible constructors // --------------------------------- @@ -250,9 +253,6 @@ public: int GetSelection() const { return wxVListBox::GetSelection(); } - // see ctrlsub.h for more info about this: - wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST - // accessing strings // ----------------- @@ -299,6 +299,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; @@ -306,7 +314,7 @@ protected: // not be named m_clientdata as that clashes with the name of an // anonymous struct member in wxEvtHandler, which we derive from. - DECLARE_NO_COPY_CLASS(wxSimpleHtmlListBox) + wxDECLARE_NO_COPY_CLASS(wxSimpleHtmlListBox); }; #endif // _WX_HTMLLBOX_H_