X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3614a8dc02363a8c5a3b5eeff8490a9e55b4ac1f..77f62aa7b6d354c46fce7829fe90a08b0a0ee803:/samples/listctrl/listtest.h diff --git a/samples/listctrl/listtest.h b/samples/listctrl/listtest.h index 5cd5dabe86..600eaf4b1a 100644 --- a/samples/listctrl/listtest.h +++ b/samples/listctrl/listtest.h @@ -9,6 +9,14 @@ // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// +// not all ports have support for EVT_CONTEXT_MENU yet, don't define +// USE_CONTEXT_MENU for those which don't +#if defined(__WXMOTIF__) || defined(__WXPM__) || defined(__WXX11__) || defined(__WXMGL__) + #define USE_CONTEXT_MENU 0 +#else + #define USE_CONTEXT_MENU 1 +#endif + // Define a new application type class MyApp: public wxApp { @@ -32,6 +40,9 @@ public: : wxListCtrl(parent, id, pos, size, style), m_attr(*wxBLUE, *wxLIGHT_GREY, wxNullFont) { +#ifdef __POCKETPC__ + EnableContextMenu(); +#endif } // add one item to the listctrl in report mode @@ -61,14 +72,22 @@ public: void OnChar(wxKeyEvent& event); +#if USE_CONTEXT_MENU + void OnContextMenu(wxContextMenuEvent& event); +#endif + + void OnRightClick(wxMouseEvent& event); + private: + void ShowContextMenu(const wxPoint& pos); + wxLog *m_logOld; 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 int OnGetItemColumnImage(long item, long column) const; virtual wxListItemAttr *OnGetItemAttr(long item) const; wxListItemAttr m_attr; @@ -81,7 +100,7 @@ private: class MyFrame: public wxFrame { public: - MyFrame(const wxChar *title, int x, int y, int w, int h); + MyFrame(const wxChar *title); virtual ~MyFrame(); void DoSize(); @@ -98,6 +117,7 @@ protected: void OnSmallIconView(wxCommandEvent& event); void OnSmallIconTextView(wxCommandEvent& event); void OnVirtualView(wxCommandEvent& event); + void OnSmallVirtualView(wxCommandEvent& event); void OnFocusLast(wxCommandEvent& event); void OnToggleFirstSel(wxCommandEvent& event); @@ -144,6 +164,8 @@ private: wxLog *m_logOld; + bool m_smallVirtual; + DECLARE_NO_COPY_CLASS(MyFrame) DECLARE_EVENT_TABLE() }; @@ -152,16 +174,17 @@ private: // IDs for the menu commands enum { - LIST_ABOUT, - LIST_QUIT, + LIST_ABOUT = wxID_ABOUT, + LIST_QUIT = wxID_EXIT, - LIST_LIST_VIEW, + LIST_LIST_VIEW = wxID_HIGHEST, LIST_ICON_VIEW, LIST_ICON_TEXT_VIEW, LIST_SMALL_ICON_VIEW, LIST_SMALL_ICON_TEXT_VIEW, LIST_REPORT_VIEW, LIST_VIRTUAL_VIEW, + LIST_SMALL_VIRTUAL_VIEW, LIST_DESELECT_ALL, LIST_SELECT_ALL, @@ -183,4 +206,3 @@ enum LIST_CTRL = 1000 }; -