X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1169a91932273bc84c23ed9dbd0a2da064d59d66..d29bf6775a132497c0190926cc7e9e3ec425e5a7:/include/wx/generic/listctrl.h diff --git a/include/wx/generic/listctrl.h b/include/wx/generic/listctrl.h index 597d781093..cd59781dfa 100644 --- a/include/wx/generic/listctrl.h +++ b/include/wx/generic/listctrl.h @@ -37,7 +37,7 @@ class WXDLLEXPORT wxDropTarget; class WXDLLEXPORT wxListItem; class WXDLLEXPORT wxListEvent; -#if !defined(__WXMSW__) || defined(__WIN16__) || defined(__WXUNIVERSAL__) +#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__) class WXDLLEXPORT wxListCtrl; #define wxImageListType wxImageList #else @@ -67,16 +67,19 @@ class WXDLLEXPORT wxGenericListCtrl: public wxControl public: wxGenericListCtrl(); wxGenericListCtrl( wxWindow *parent, - wxWindowID winid = -1, + wxWindowID winid = wxID_ANY, const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator, - const wxString &name = wxT("listctrl") ); + const wxString &name = wxT("listctrl") ) + { + Create(parent, winid, pos, size, style, validator, name); + } ~wxGenericListCtrl(); bool Create( wxWindow *parent, - wxWindowID winid = -1, + wxWindowID winid = wxID_ANY, const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, long style = wxLC_ICON, @@ -105,7 +108,7 @@ public: bool SetItemPosition( long item, const wxPoint& pos ); // not supported in wxGLC int GetItemCount() const; int GetColumnCount() const; - void SetItemSpacing( int spacing, bool isSmall = FALSE ); + void SetItemSpacing( int spacing, bool isSmall = false ); wxSize GetItemSpacing() const; void SetItemTextColour( long item, const wxColour& col); wxColour GetItemTextColour( long item ) const; @@ -116,7 +119,7 @@ public: void SetTextColour(const wxColour& col); long GetTopItem() const; - void SetSingleStyle( long style, bool add = TRUE ) ; + void SetSingleStyle( long style, bool add = true ) ; void SetWindowStyleFlag( long style ); void RecreateWindow() {} long GetNextItem( long item, int geometry = wxLIST_NEXT_ALL, int state = wxLIST_STATE_DONTCARE ) const; @@ -137,7 +140,7 @@ public: void Edit( long item ); bool EnsureVisible( long item ); - long FindItem( long start, const wxString& str, bool partial = FALSE ); + 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); @@ -152,8 +155,15 @@ public: bool SortItems( wxListCtrlCompare fn, long data ); bool Update( long item ); - // returns true if it is a virtual list control - bool IsVirtual() const { return (GetWindowStyle() & wxLC_VIRTUAL) != 0; } + // are we in report mode? + bool InReportView() const { return HasFlag(wxLC_REPORT); } + + // are we in virtual report mode? + bool IsVirtual() const { return HasFlag(wxLC_VIRTUAL); } + + // do we have a header window? + bool HasHeader() const + { return InReportView() && !HasFlag(wxLC_NO_HEADER); } // refresh items selectively (only useful for virtual list controls) void RefreshItem(long item); @@ -163,6 +173,14 @@ public: wxDEPRECATED( int GetItemSpacing( bool isSmall ) const ); + virtual wxVisualAttributes GetDefaultAttributes() const + { + return GetClassDefaultAttributes(GetWindowVariant()); + } + + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); + // implementation only from now on // ------------------------------- @@ -170,7 +188,7 @@ public: void OnSize( wxSizeEvent &event ); // We have to hand down a few functions - virtual void Refresh(bool eraseBackground = TRUE, + virtual void Refresh(bool eraseBackground = true, const wxRect *rect = NULL); virtual void Freeze(); @@ -237,7 +255,7 @@ private: DECLARE_DYNAMIC_CLASS(wxGenericListCtrl); }; -#if !defined(__WXMSW__) || defined(__WIN16__) || defined(__WXUNIVERSAL__) +#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__) /* * wxListCtrl has to be a real class or we have problems with * the run-time information. @@ -248,15 +266,18 @@ class WXDLLEXPORT wxListCtrl: public wxGenericListCtrl DECLARE_DYNAMIC_CLASS(wxListCtrl) public: - wxListCtrl(); + wxListCtrl() {} - wxListCtrl(wxWindow *parent, wxWindowID winid = -1, + wxListCtrl(wxWindow *parent, wxWindowID winid = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxLC_ICON, const wxValidator &validator = wxDefaultValidator, - const wxString &name = wxT("listctrl") ); + const wxString &name = wxT("listctrl") ) + : wxGenericListCtrl(parent, winid, pos, size, style, validator, name) + { + } }; -#endif // !__WXMSW__ || __WIN16__ || __WXUNIVERSAL__ +#endif // !__WXMSW__ || __WXUNIVERSAL__ #endif // __LISTCTRLH_G__