X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/43c64cc6c9f7699c4a63e3fb191a7a90c25f0bab..73c997ba7ba115302cf1b1e75bb467e26c89d599:/interface/wx/dataview.h diff --git a/interface/wx/dataview.h b/interface/wx/dataview.h index 669de4c1d6..f42ccb9e83 100644 --- a/interface/wx/dataview.h +++ b/interface/wx/dataview.h @@ -135,10 +135,21 @@ public: Override this to indicate that the item has special font attributes. This only affects the wxDataViewTextRendererText renderer. + The base class version always simply returns @false. + @see wxDataViewItemAttr. + + @param item + The item for which the attribute is requested. + @param col + The column of the item for which the attribute is requested. + @param attr + The attribute to be filled in if the function returns @true. + @return + @true if this item has an attribute or @false otherwise. */ virtual bool GetAttr(const wxDataViewItem& item, unsigned int col, - wxDataViewItemAttr& attr); + wxDataViewItemAttr& attr) const; /** Override this so the control can query the child items of an item. @@ -339,10 +350,26 @@ public: Override this to indicate that the row has special font attributes. This only affects the wxDataViewTextRendererText() renderer. + The base class version always simply returns @false. + @see wxDataViewItemAttr. + + @param row + The row for which the attribute is requested. + @param col + The column for which the attribute is requested. + @param attr + The attribute to be filled in if the function returns @true. + @return + @true if this item has an attribute or @false otherwise. */ virtual bool GetAttrByRow(unsigned int row, unsigned int col, - wxDataViewItemAttr& attr); + wxDataViewItemAttr& attr) const; + + /** + Returns the number of items (i.e. rows) in the list. + */ + unsigned int GetCount() const; /** Returns the wxDataViewItem at the given @e row. @@ -436,6 +463,11 @@ public: Constructor. */ wxDataViewVirtualListModel(unsigned int initial_size = 0); + + /** + Returns the number of virtual items (i.e. rows) in the list. + */ + unsigned int GetCount() const; }; @@ -482,7 +514,7 @@ public: @class wxDataViewItem wxDataViewItem is a small opaque class that represents an item in a wxDataViewCtrl - in a persistent way, i.e. indepent of the position of the item in the control + in a persistent way, i.e. independent of the position of the item in the control or changes to its contents. It must hold a unique ID of type @e void* in its only field and can be converted @@ -564,6 +596,8 @@ public: @style{wxDV_VARIABLE_LINE_HEIGHT} Allow variable line heights. This can be inefficient when displaying large number of items. + @style{wxDV_NO_HEADER} + Do not show column headers (which are shown by default). @endStyleTable @beginEventEmissionTable{wxDataViewEvent} @@ -1403,9 +1437,20 @@ public: const wxVariant& value); /** - Create DC on request. Internal. - */ - virtual wxDC* GetDC(); + Return the attribute to be used for rendering. + + This function may be called from Render() implementation to use the + attributes defined for the item if the renderer supports them. + + Notice that when Render() is called, the wxDC object passed to it is + already set up to use the correct attributes (e.g. its font is set to + bold or italic version if wxDataViewItemAttr::GetBold() or GetItalic() + returns true) so it may not be necessary to call it explicitly if you + only want to render text using the items attributes. + + @since 2.9.1 + */ + const wxDataViewItemAttr& GetAttr() const; /** Return size required to show content. @@ -1413,7 +1458,7 @@ public: virtual wxSize GetSize() const = 0; /** - Overrride this so that the renderer can get the value from the editor + Override this so that the renderer can get the value from the editor control (pointed to by @a editor): @code { @@ -1434,7 +1479,7 @@ public: virtual bool HasEditorCtrl() const; /** - Overrride this to react to a left click. + Override this to react to a left click. This method will only be called in @c wxDATAVIEW_CELL_ACTIVATABLE mode. */ virtual bool LeftClick( wxPoint cursor, @@ -1460,7 +1505,7 @@ public: wxDC* dc, int state); /** - Overrride this to start a drag operation. Not yet supported. + Override this to start a drag operation. Not yet supported. */ virtual bool StartDrag(wxPoint cursor, wxRect cell, wxDataViewModel* model, @@ -1980,6 +2025,11 @@ public: int icon = -1, wxClientData* data = NULL); + /** + Returns true if item is a container. + */ + bool IsContainer( const wxDataViewItem& item ); + /** Calls the same method from wxDataViewTreeStore but uses an index position in the image list instead of a wxIcon.