X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/aba3d35e7bf1309c58d9e3942437c00fbb167355..53b6d7a29879a67a54e1f26e77a0697fecacf839:/include/wx/msw/listctrl.h?ds=sidebyside diff --git a/include/wx/msw/listctrl.h b/include/wx/msw/listctrl.h index d2cbb4d71b..4bb1855f5e 100644 --- a/include/wx/msw/listctrl.h +++ b/include/wx/msw/listctrl.h @@ -2,7 +2,7 @@ // Name: wx/msw/listctrl.h // Purpose: wxListCtrl class // Author: Julian Smart -// Modified by: +// Modified by: Agron Selimaj // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart @@ -12,10 +12,6 @@ #ifndef _WX_LISTCTRL_H_ #define _WX_LISTCTRL_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "listctrl.h" -#endif - #if wxUSE_LISTCTRL #include "wx/control.h" @@ -95,7 +91,7 @@ public: const wxSize& size = wxDefaultSize, long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator, - const wxString& name = _T("wxListCtrl")) + const wxString& name = wxListCtrlNameStr) { Init(); @@ -110,7 +106,7 @@ public: const wxSize& size = wxDefaultSize, long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator, - const wxString& name = _T("wxListCtrl")); + const wxString& name = wxListCtrlNameStr); // Attributes @@ -124,7 +120,7 @@ public: bool GetColumn(int col, wxListItem& item) const; // Sets information about this column - bool SetColumn(int col, wxListItem& item) ; + bool SetColumn(int col, const wxListItem& item) ; // Gets the column width int GetColumnWidth(int col) const; @@ -161,6 +157,7 @@ public: // Sets the item image bool SetItemImage(long item, int image, int selImage = -1) ; + bool SetItemColumnImage(long item, long column, int image); // Gets the item text wxString GetItemText(long item) const ; @@ -177,6 +174,9 @@ public: // Gets the item rectangle bool GetItemRect(long item, wxRect& rect, int code = wxLIST_RECT_BOUNDS) const ; + // Gets the subitem rectangle in report mode + bool GetSubItemRect(long item, long subItem, wxRect& rect, int code = wxLIST_RECT_BOUNDS) const ; + // Gets the item position bool GetItemPosition(long item, wxPoint& pos) const ; @@ -200,6 +200,10 @@ public: void SetItemBackgroundColour( long item, const wxColour &col); wxColour GetItemBackgroundColour( long item ) const; + // Font of an item. + void SetItemFont( long item, const wxFont &f); + wxFont GetItemFont( long item ) const; + // Gets the number of selected items in the list control int GetSelectedItemCount() const; @@ -292,11 +296,12 @@ public: // Determines which item (if any) is at the specified point, // giving details in 'flags' (see wxLIST_HITTEST_... flags above) - long HitTest(const wxPoint& point, int& flags); + // Request the subitem number as well at the given coordinate. + long HitTest(const wxPoint& point, int& flags, long* ptrSubItem = NULL) const; // Inserts an item, returning the index of the new item if successful, // -1 otherwise. - long InsertItem(wxListItem& info); + long InsertItem(const wxListItem& info); // Insert a string item long InsertItem(long index, const wxString& label); @@ -308,7 +313,7 @@ public: long InsertItem(long index, const wxString& label, int imageIndex); // For list view mode (only), inserts a column. - long InsertColumn(long col, wxListItem& info); + long InsertColumn(long col, const wxListItem& info); long InsertColumn(long col, const wxString& heading, @@ -341,6 +346,7 @@ public: // IMPLEMENTATION virtual bool MSWCommand(WXUINT param, WXWORD id); virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result); + virtual bool MSWShouldPreProcessMessage(WXMSG* msg); // bring the control in sync with current m_windowStyle value void UpdateStyle(); @@ -362,8 +368,18 @@ public: GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); +#if WXWIN_COMPATIBILITY_2_6 // obsolete stuff, for compatibility only -- don't use wxDEPRECATED( int GetItemSpacing(bool isSmall) const); +#endif // WXWIN_COMPATIBILITY_2_6 + + // convert our styles to Windows + virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const; + + // special Windows message handling + virtual WXLRESULT MSWWindowProc(WXUINT nMsg, + WXWPARAM wParam, + WXLPARAM lParam); protected: // common part of all ctors @@ -372,8 +388,9 @@ protected: // free memory taken by all internal data void FreeAllInternalData(); - // convert our styles to Windows - virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const; + // get the item attribute, either by quering it for virtual control, or by + // returning the one previously set using setter methods for a normal one + wxListItemAttr *DoGetItemAttr(long item) const; wxTextCtrl* m_textCtrl; // The control used for editing a label @@ -402,9 +419,14 @@ protected: // return the text for the given column of the given item virtual wxString OnGetItemText(long item, long column) const; - // return the icon for the given item + // return the icon for the given item. In report view, OnGetItemImage will + // only be called for the first column. See OnGetItemColumnImage for + // details. virtual int OnGetItemImage(long item) const; + // return the icon for the given item and column. + virtual int OnGetItemColumnImage(long item, long column) const; + // return the attribute for the item (may return NULL if none) virtual wxListItemAttr *OnGetItemAttr(long item) const; @@ -420,4 +442,3 @@ private: #endif // wxUSE_LISTCTRL #endif // _WX_LISTCTRL_H_ -