]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/listctrl.h
wxClipboard now serves the primary selection as well
[wxWidgets.git] / include / wx / generic / listctrl.h
index 96ac43a453ee938464757e448e061e98e645daf8..81c34064dfab389a803c40c9f4b967495a405403 100644 (file)
@@ -190,7 +190,7 @@ class wxListItem: public wxObject
 // wxListEvent
 //-----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxListEvent: public wxCommandEvent
+class WXDLLEXPORT wxListEvent: public wxNotifyEvent
 {
   DECLARE_DYNAMIC_CLASS(wxListEvent)
 
@@ -222,7 +222,9 @@ typedef void (wxEvtHandler::*wxListEventFunction)(wxListEvent&);
 #define EVT_LIST_KEY_DOWN(id, fn) { wxEVT_COMMAND_LIST_KEY_DOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL },
 #define EVT_LIST_INSERT_ITEM(id, fn) { wxEVT_COMMAND_LIST_INSERT_ITEM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL },
 #define EVT_LIST_COL_CLICK(id, fn) { wxEVT_COMMAND_LIST_COL_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL },
-
+#define EVT_LIST_ITEM_RIGHT_CLICK(id, fn) { wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL },
+#define EVT_LIST_ITEM_MIDDLE_CLICK(id, fn) { wxEVT_COMMAND_LIST_ITEM_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL },
+#define EVT_LIST_ITEM_ACTIVATED(id, fn) { wxEVT_COMMAND_LIST_ITEM_ACTIVATED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxListEventFunction) & fn, (wxObject *) NULL },
 
 //-----------------------------------------------------------------------------
 //  wxListItemData (internal)
@@ -461,7 +463,6 @@ class wxListMainWindow: public wxScrolledWindow
     void RefreshLine( wxListLineData *line );
     void OnPaint( wxPaintEvent &event );
     void HilightAll( bool on );
-    void ActivateLine( wxListLineData *line );
     void SendNotify( wxListLineData *line, wxEventType command );
     void FocusLine( wxListLineData *line );
     void UnfocusLine( wxListLineData *line );
@@ -519,7 +520,6 @@ class wxListMainWindow: public wxScrolledWindow
     void InsertColumn( long col, wxListItem &item );
 //    void AddColumn( wxListItem &item );
     void SortItems( wxListCtrlCompare fn, long data );
-    virtual bool OnListNotify( wxListEvent &event );
 
   DECLARE_EVENT_TABLE()
 };
@@ -568,6 +568,7 @@ class wxListCtrl: public wxControl
     bool GetItemPosition( long item, wxPoint& pos ) const;
     bool SetItemPosition( long item, const wxPoint& pos ); // not supported in wxGLC
     int GetItemCount(void) const;
+    int GetColumnCount(void) const;
     void SetItemSpacing( int spacing, bool isSmall = FALSE );
     int GetItemSpacing( bool isSmall ) const;
     int GetSelectedItemCount(void) const;
@@ -581,9 +582,10 @@ class wxListCtrl: public wxControl
     wxImageList *GetImageList(int which) const;
     void SetImageList(wxImageList *imageList, int which) ;
     bool Arrange( int flag = wxLIST_ALIGN_DEFAULT ); // always wxLIST_ALIGN_LEFT in wxGLC
+    void ClearAll();
     bool DeleteItem( long item );
-    bool DeleteAllItems(void) ;
-    void DeleteAllColumns(void) ;
+    bool DeleteAllItems(void);
+    bool DeleteAllColumns(void);
     bool DeleteColumn( int col );
 //  wxText& Edit(long item) ;  // not supported in wxGLC
     bool EnsureVisible( long item );
@@ -601,7 +603,6 @@ class wxListCtrl: public wxControl
     bool ScrollList(int dx, int dy);
     bool SortItems(wxListCtrlCompare fn, long data);
     bool Update(long item);
-    virtual bool OnListNotify(wxListEvent& WXUNUSED(event)) { return FALSE; }
     void OnIdle( wxIdleEvent &event );
     
     // We have to hand down a few functions
@@ -624,6 +625,8 @@ class wxListCtrl: public wxControl
         else return wxColour(); }
     bool PopupMenu( wxMenu *menu, int x, int y )
       { return m_mainWin->PopupMenu( menu, x, y ); }
+    void SetFocus()
+      { m_mainWin->SetFocus(); }
 
   // implementation