Add wxGrid::RefreshAttr() method to force attribute refresh.
A cached attribute may continue to be used even though the attribute returned by a custom wxGridCellAttrProvider has changed so add a method to force wxGrid to update the attribute by forgetting the cached copy. Closes #12406. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -3846,6 +3846,31 @@ public:
|
||||
*/
|
||||
bool InsertRows(int pos = 0, int numRows = 1, bool updateLabels = true);
|
||||
|
||||
/**
|
||||
Invalidates the cached attribute for the given cell.
|
||||
|
||||
For efficiency reasons, wxGrid may cache the recently used attributes
|
||||
(currently it caches only the single most recently used one, in fact)
|
||||
which can result in the cell appearance not being refreshed even when
|
||||
the attribute returned by your custom wxGridCellAttrProvider-derived
|
||||
class has changed. To force the grid to refresh the cell attribute,
|
||||
this function may be used. Notice that calling it will not result in
|
||||
actually redrawing the cell, you still need to call
|
||||
wxWindow::RefreshRect() to invalidate the area occupied by the cell in
|
||||
the window to do this. Also note that you don't need to call this
|
||||
function if you store the attributes in wxGrid itself, i.e. use its
|
||||
SetAttr() and similar methods, it is only useful when using a separate
|
||||
custom attributes provider.
|
||||
|
||||
@param row
|
||||
The row of the cell whose attribute needs to be queried again.
|
||||
@param col
|
||||
The column of the cell whose attribute needs to be queried again.
|
||||
|
||||
@since 2.9.2
|
||||
*/
|
||||
void RefreshAttr(int row, int col);
|
||||
|
||||
/**
|
||||
Sets the cell attributes for all cells in the specified column.
|
||||
|
||||
|
Reference in New Issue
Block a user