- DECLARE_DYNAMIC_CLASS(wxListCtrl);
-
- public:
-
- wxListCtrl(void);
- wxListCtrl( wxWindow *parent, wxWindowID id,
- const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
- long style = 0, const wxString &name = "listctrl" );
- ~wxListCtrl(void);
- bool Create( wxWindow *parent, wxWindowID id,
- const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
- long style = 0, const wxString &name = "listctrl" );
- void OnSize( wxSizeEvent &event );
- bool GetColumn( int col, wxListItem& item );
- bool SetColumn( int col, wxListItem& item );
- int GetColumnWidth( int col );
- bool SetColumnWidth( int col, int width);
- int GetCountPerPage(void); // not the same in wxGLC as in Windows, I think
-// wxText& GetEditControl(void) const; // not supported in wxGLC
- bool GetItem( wxListItem& info );
- bool SetItem( wxListItem& info ) ;
- long SetItem( long index, int col, const wxString& label, int imageId = -1 );
- int GetItemState( long item, long stateMask );
- bool SetItemState( long item, long state, long stateMask);
- bool SetItemImage( long item, int image, int selImage);
- wxString GetItemText( long item );
- void SetItemText( long item, const wxString& str );
- long GetItemData( long item );
- bool SetItemData( long item, long data );
- bool GetItemRect( long item, wxRectangle& rect, int code = wxLIST_RECT_BOUNDS );
- bool GetItemPosition( long item, wxPoint& pos );
- bool SetItemPosition( long item, const wxPoint& pos ); // not supported in wxGLC
- int GetItemCount(void);
- void SetItemSpacing( int spacing, bool isSmall = FALSE );
- int GetItemSpacing( bool isSmall );
- int GetSelectedItemCount(void);
-// wxColour GetTextColour(void) const; // wxGLC has colours for every Item (see wxListItem)
-// void SetTextColour(const wxColour& col);
- long GetTopItem(void);
- void SetSingleStyle( long style, bool add = TRUE ) ;
- void SetWindowStyleFlag(long style);
- void RecreateWindow(void) {};
- long GetNextItem(long item, int geometry = wxLIST_NEXT_ALL, int state = wxLIST_STATE_DONTCARE) const;
- wxImageList *GetImageList(int which);
- void SetImageList(wxImageList *imageList, int which) ;
- bool Arrange( int flag = wxLIST_ALIGN_DEFAULT ); // always wxLIST_ALIGN_LEFT in wxGLC
- bool DeleteItem( long item );
- bool DeleteAllItems(void) ;
- bool DeleteColumn( int col );
-// wxText& Edit(long item) ; // not supported in wxGLC
- bool EnsureVisible( long item );
- long FindItem(long start, const wxString& str, bool partial = FALSE );
- long FindItem(long start, long data);
- long FindItem(long start, const wxPoint& pt, int direction); // not supported in wxGLC
- long HitTest(const wxPoint& point, int& flags);
- long InsertItem(wxListItem& info);
- long InsertItem(long index, const wxString& label);
- long InsertItem(long index, int imageIndex);
- long InsertItem(long index, const wxString& label, int imageIndex);
- long InsertColumn(long col, wxListItem& info);
- long InsertColumn(long col, const wxString& heading, int format = wxLIST_FORMAT_LEFT,
- int width = -1);
- 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
-
- void SetDropTarget( wxDropTarget *dropTarget )
- { m_mainWin->SetDropTarget( dropTarget ); }
- wxDropTarget *GetDropTarget() const
- { return m_mainWin->GetDropTarget(); }
- void SetCursor( const wxCursor &cursor )
- { m_mainWin->SetCursor( cursor); }
- wxColour GetBackgroundColour() const
- { return m_mainWin->GetBackgroundColour(); }
- void SetBackgroundColour( const wxColour &colour )
- { m_mainWin->SetBackgroundColour( colour ); }
- wxColour GetForegroundColour() const
- { return m_mainWin->GetForegroundColour(); }
- void SetForegroundColour( const wxColour &colour )
- { m_mainWin->SetForegroundColour( colour ); }
- bool PopupMenu( wxMenu *menu, int x, int y )
- { return m_mainWin->PopupMenu( menu, x, y ); }
-
- protected:
-
-// wxListTextCtrl m_textCtrl;
- wxImageList *m_imageListNormal;
- wxImageList *m_imageListSmall;
- wxImageList *m_imageListState; // what's that ?
- wxListHeaderWindow *m_headerWin;
- wxListMainWindow *m_mainWin;