X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/98ec9dbebc5584ba1b903d314b25e8c562891483..decb3a6a16ea5acf1dfcdb1b70cb6edaa09840c0:/samples/listctrl/listtest.h diff --git a/samples/listctrl/listtest.h b/samples/listctrl/listtest.h index 8814cd59b6..f649e03a79 100644 --- a/samples/listctrl/listtest.h +++ b/samples/listctrl/listtest.h @@ -19,12 +19,19 @@ public: class MyListCtrl: public wxListCtrl { public: - MyListCtrl(wxWindow *parent, const wxWindowID id, const wxPoint& pos, - const wxSize& size, long style): - wxListCtrl(parent, id, pos, size, style) + MyListCtrl(wxWindow *parent, + const wxWindowID id, + const wxPoint& pos, + const wxSize& size, + long style) + : wxListCtrl(parent, id, pos, size, style), + m_attr(*wxCYAN, *wxLIGHT_GREY, wxNullFont) { } + // add one item to the listctrl in report mode + void InsertItemInReportView(int i); + void OnColClick(wxListEvent& event); void OnBeginDrag(wxListEvent& event); void OnBeginRDrag(wxListEvent& event); @@ -38,6 +45,7 @@ public: void OnDeselected(wxListEvent& event); void OnListKeyDown(wxListEvent& event); void OnActivated(wxListEvent& event); + void OnCacheHint(wxListEvent& event); void OnChar(wxKeyEvent& event); @@ -46,6 +54,9 @@ private: virtual wxString OnGetItemText(long item, long column) const; virtual int OnGetItemImage(long item) const; + virtual wxListItemAttr *OnGetItemAttr(long item) const; + + wxListItemAttr m_attr; DECLARE_EVENT_TABLE() }; @@ -73,9 +84,11 @@ public: void OnSmallIconTextView(wxCommandEvent& event); void OnVirtualView(wxCommandEvent& event); + void OnFocusLast(wxCommandEvent& event); void OnToggleFirstSel(wxCommandEvent& event); void OnDeselectAll(wxCommandEvent& event); void OnSelectAll(wxCommandEvent& event); + void OnAdd(wxCommandEvent& event); void OnDelete(wxCommandEvent& event); void OnDeleteAll(wxCommandEvent& event); void OnSort(wxCommandEvent& event); @@ -83,6 +96,7 @@ public: void OnSetBgColour(wxCommandEvent& event); void OnToggleMultiSel(wxCommandEvent& event); void OnShowColInfo(wxCommandEvent& event); + void OnShowSelInfo(wxCommandEvent& event); void OnUpdateShowColInfo(wxUpdateUIEvent& event); @@ -90,6 +104,15 @@ public: wxImageList *m_imageListSmall; private: + // recreate the list control with the new flags + void RecreateList(long flags, bool withText = TRUE); + + // fill the control with items depending on the view + void InitWithListItems(); + void InitWithReportItems(); + void InitWithIconItems(bool withText, bool sameIcon = FALSE); + void InitWithVirtualItems(); + wxLog *m_logOld; DECLARE_EVENT_TABLE() @@ -99,26 +122,30 @@ private: // IDs for the menu commands enum { + LIST_ABOUT, LIST_QUIT, + LIST_LIST_VIEW, LIST_ICON_VIEW, LIST_ICON_TEXT_VIEW, LIST_SMALL_ICON_VIEW, LIST_SMALL_ICON_TEXT_VIEW, + LIST_REPORT_VIEW, LIST_VIRTUAL_VIEW, - LIST_REPORT_VIEW, LIST_DESELECT_ALL, LIST_SELECT_ALL, - LIST_ABOUT, LIST_DELETE_ALL, LIST_DELETE, + LIST_ADD, LIST_SORT, LIST_SET_FG_COL, LIST_SET_BG_COL, LIST_TOGGLE_MULTI_SEL, LIST_TOGGLE_FIRST, LIST_SHOW_COL_INFO, + LIST_SHOW_SEL_INFO, + LIST_FOCUS_LAST, LIST_CTRL = 1000 };