wxWidgets: wxDataViewValueAdjuster Class Reference

| Version: 3.2.7

Public Member Functions | List of all members
wxDataViewValueAdjuster Class Reference
Class List by Category » wxDataViewCtrl Related Classes

`#include <wx/dataview.h>`

## Detailed Description

This class can be used with wxDataViewRenderer::SetValueAdjuster() to customize rendering of model values with standard renderers.

Can be used to change the value if it is shown on a highlighted row (i.e. in selection) which typically has dark background. It is useful in combination with wxDataViewTextRenderer with markup and can be used e.g. to remove background color attributes inside selection, as a lightweight alternative to implementing an entire wxDataViewCustomRenderer specialization.

// Markup renderer that removes bgcolor attributes when in selection
class DataViewMarkupRenderer : public wxDataViewTextRenderer
{
public:
DataViewMarkupRenderer()
{
EnableMarkup();
SetValueAdjuster(new Adjuster());
}
private:
class Adjuster : public wxDataViewValueAdjuster
{
public:
wxVariant MakeHighlighted(const wxVariant& value) const override
{
wxString s = value.GetString();
size_t pos = s.find(" bgcolor=\"");
if (pos != wxString::npos)
{
size_t pos2 = s.find('"', pos + 10);
s.erase(pos, pos2 - pos + 1);
return s;
}
return value;
}
};
};
wxDataViewTextRenderer
wxDataViewTextRenderer is used for rendering text.
Definition: dataview.h:2165
wxDataViewValueAdjuster
This class can be used with wxDataViewRenderer::SetValueAdjuster() to customize rendering of model va...
Definition: dataview.h:4138
wxDataViewValueAdjuster::MakeHighlighted
virtual wxVariant MakeHighlighted(const wxVariant &value) const
Change value for rendering when highlighted.
wxString
String class for passing textual data to or receiving it from wxWidgets.
Definition: string.h:315
wxString::find
size_t find(const wxString &str, size_t nStart=0) const
wxString::npos
static const size_t npos
An 'invalid' value for string index.
Definition: string.h:1784
wxString::erase
wxString & erase(size_type pos=0, size_type n=npos)
wxVariant
The wxVariant class represents a container for any type.
Definition: variant.h:163
wxVariant::GetString
wxString GetString() const
Gets the string value.

Since
  3.1.1

##

Library: wxCore
Category: wxDataViewCtrl Related Classes

## Public Member Functions
virtual wxVariant | MakeHighlighted (const wxVariant &value) const
| Change value for rendering when highlighted. More...

## Member Function Documentation

## ◆ MakeHighlighted()

virtual wxVariant wxDataViewValueAdjuster::MakeHighlighted | ( | const wxVariant & | value | ) | const
| virtual

Change value for rendering when highlighted.

Override to customize the value when it is shown in a highlighted (selected) row, typically on a dark background.

Default implementation returns value unmodified.

The value passed to this method is always non-null and it must return a non-null value too.