Add wxDataViewCtrlBase::SetAlternateRowColour()

Previously this method was only available in the generic wxDataViewCtrl,
move it to the base class to make it possible calling it in portable
code and document it.

Closes #14617.
This commit is contained in:
Vadim Zeitlin
2018-02-04 15:27:02 +01:00
parent da4e125db4
commit af78ad3b49
4 changed files with 26 additions and 3 deletions

View File

@@ -755,6 +755,12 @@ public:
virtual bool SetHeaderAttr(const wxItemAttr& WXUNUSED(attr)) virtual bool SetHeaderAttr(const wxItemAttr& WXUNUSED(attr))
{ return false; } { return false; }
// Set the colour used for the "alternate" rows when wxDV_ROW_LINES is on.
// Also only supported in the generic version, which returns true to
// indicate it.
virtual bool SetAlternateRowColour(const wxColour& WXUNUSED(colour))
{ return false; }
virtual wxVisualAttributes GetDefaultAttributes() const wxOVERRIDE virtual wxVisualAttributes GetDefaultAttributes() const wxOVERRIDE
{ {
return GetClassDefaultAttributes(GetWindowVariant()); return GetClassDefaultAttributes(GetWindowVariant());

View File

@@ -277,10 +277,11 @@ public:
virtual bool SetHeaderAttr(const wxItemAttr& attr) wxOVERRIDE; virtual bool SetHeaderAttr(const wxItemAttr& attr) wxOVERRIDE;
// These methods are specific to generic wxDataViewCtrl implementation and virtual bool SetAlternateRowColour(const wxColour& colour) wxOVERRIDE;
// This method is specific to generic wxDataViewCtrl implementation and
// should not be used in portable code. // should not be used in portable code.
wxColour GetAlternateRowColour() const { return m_alternateRowColour; } wxColour GetAlternateRowColour() const { return m_alternateRowColour; }
void SetAlternateRowColour(const wxColour& colour);
// The returned pointer is null if the control has wxDV_NO_HEADER style. // The returned pointer is null if the control has wxDV_NO_HEADER style.
// //

View File

@@ -1566,6 +1566,21 @@ public:
*/ */
virtual void SelectAll(); virtual void SelectAll();
/**
Set custom colour for the alternate rows used with wxDV_ROW_LINES
style.
Note that calling this method has no effect if wxDV_ROW_LINES is off.
@param colour The colour to use for the alternate rows.
@return @true if customizing this colour is supported (currently only
in the generic version), @false if this method is not implemented
under this platform.
@since 3.1.1
*/
bool SetAlternateRowColour(const wxColour& colour);
/** /**
Set which column shall contain the tree-like expanders. Set which column shall contain the tree-like expanders.
*/ */

View File

@@ -5781,9 +5781,10 @@ bool wxDataViewCtrl::SetHeaderAttr(const wxItemAttr& attr)
return true; return true;
} }
void wxDataViewCtrl::SetAlternateRowColour(const wxColour& colour) bool wxDataViewCtrl::SetAlternateRowColour(const wxColour& colour)
{ {
m_alternateRowColour = colour; m_alternateRowColour = colour;
return true;
} }
void wxDataViewCtrl::SelectAll() void wxDataViewCtrl::SelectAll()