X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5cd891743efcff4d6603c68b98e72fb033792a88..d269b7df728ec562f7fe32f1d882d9d4ee221f53:/samples/listctrl/listtest.h diff --git a/samples/listctrl/listtest.h b/samples/listctrl/listtest.h index 446585a4a4..97a719b7dc 100644 --- a/samples/listctrl/listtest.h +++ b/samples/listctrl/listtest.h @@ -5,7 +5,7 @@ // Modified by: // Created: 04/01/98 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem +// Copyright: (c) Julian Smart // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// @@ -13,15 +13,24 @@ class MyApp: public wxApp { public: + MyApp() { } + virtual bool OnInit(); + +private: + DECLARE_NO_COPY_CLASS(MyApp) }; 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(*wxBLUE, *wxLIGHT_GREY, wxNullFont) { } @@ -29,6 +38,10 @@ public: void InsertItemInReportView(int i); void OnColClick(wxListEvent& event); + void OnColRightClick(wxListEvent& event); + void OnColBeginDrag(wxListEvent& event); + void OnColDragging(wxListEvent& event); + void OnColEndDrag(wxListEvent& event); void OnBeginDrag(wxListEvent& event); void OnBeginRDrag(wxListEvent& event); void OnBeginLabelEdit(wxListEvent& event); @@ -41,15 +54,24 @@ public: void OnDeselected(wxListEvent& event); void OnListKeyDown(wxListEvent& event); void OnActivated(wxListEvent& event); + void OnFocused(wxListEvent& event); + void OnCacheHint(wxListEvent& event); void OnChar(wxKeyEvent& event); private: + void SetColumnImage(int col, int image); + void LogEvent(const wxListEvent& event, const wxChar *eventName); + void LogColEvent(const wxListEvent& event, const wxChar *eventName); virtual wxString OnGetItemText(long item, long column) const; virtual int OnGetItemImage(long item) const; + virtual wxListItemAttr *OnGetItemAttr(long item) const; + wxListItemAttr m_attr; + + DECLARE_NO_COPY_CLASS(MyListCtrl) DECLARE_EVENT_TABLE() }; @@ -57,13 +79,12 @@ private: class MyFrame: public wxFrame { public: - MyListCtrl *m_listCtrl; - wxTextCtrl *m_logWindow; - MyFrame(const wxChar *title, int x, int y, int w, int h); - ~MyFrame(); + virtual ~MyFrame(); -public: + void DoSize(); + +protected: void OnSize(wxSizeEvent& event); void OnQuit(wxCommandEvent& event); @@ -76,10 +97,12 @@ 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 OnEdit(wxCommandEvent& event); void OnDelete(wxCommandEvent& event); void OnDeleteAll(wxCommandEvent& event); void OnSort(wxCommandEvent& event); @@ -88,12 +111,18 @@ public: void OnToggleMultiSel(wxCommandEvent& event); void OnShowColInfo(wxCommandEvent& event); void OnShowSelInfo(wxCommandEvent& event); + void OnFreeze(wxCommandEvent& event); + void OnThaw(wxCommandEvent& event); void OnUpdateShowColInfo(wxUpdateUIEvent& event); wxImageList *m_imageListNormal; wxImageList *m_imageListSmall; + wxPanel *m_panel; + MyListCtrl *m_listCtrl; + wxTextCtrl *m_logWindow; + private: // recreate the list control with the new flags void RecreateList(long flags, bool withText = TRUE); @@ -106,6 +135,7 @@ private: wxLog *m_logOld; + DECLARE_NO_COPY_CLASS(MyFrame) DECLARE_EVENT_TABLE() }; @@ -129,6 +159,7 @@ enum LIST_DELETE_ALL, LIST_DELETE, LIST_ADD, + LIST_EDIT, LIST_SORT, LIST_SET_FG_COL, LIST_SET_BG_COL, @@ -136,6 +167,9 @@ enum LIST_TOGGLE_FIRST, LIST_SHOW_COL_INFO, LIST_SHOW_SEL_INFO, + LIST_FOCUS_LAST, + LIST_FREEZE, + LIST_THAW, LIST_CTRL = 1000 };