Fixed RefreshRect() call in wxPropertyGrid::DrawItems() to use physical window coordinates instead of logical grid ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1433,7 +1433,7 @@ public:
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Returns rectangle that fully contains properties between and including
|
Returns rectangle that fully contains properties between and including
|
||||||
p1 and p2.
|
p1 and p2. Rectangle is in virtual scrolled window coordinates.
|
||||||
*/
|
*/
|
||||||
wxRect GetPropertyRect( const wxPGProperty* p1,
|
wxRect GetPropertyRect( const wxPGProperty* p1,
|
||||||
const wxPGProperty* p2 ) const;
|
const wxPGProperty* p2 ) const;
|
||||||
|
@@ -2530,6 +2530,8 @@ wxRect wxPropertyGrid::GetPropertyRect( const wxPGProperty* p1, const wxPGProper
|
|||||||
|
|
||||||
//
|
//
|
||||||
// Return rect which encloses the given property range
|
// Return rect which encloses the given property range
|
||||||
|
// (in logical grid coordinates)
|
||||||
|
//
|
||||||
|
|
||||||
int visTop = p1->GetY();
|
int visTop = p1->GetY();
|
||||||
int visBottom;
|
int visBottom;
|
||||||
@@ -2572,6 +2574,13 @@ void wxPropertyGrid::DrawItems( const wxPGProperty* p1, const wxPGProperty* p2 )
|
|||||||
wxRect r = GetPropertyRect(p1, p2);
|
wxRect r = GetPropertyRect(p1, p2);
|
||||||
if ( r.width > 0 )
|
if ( r.width > 0 )
|
||||||
{
|
{
|
||||||
|
// Convert rectangle from logical grid coordinates to physical ones
|
||||||
|
int vx, vy;
|
||||||
|
GetViewStart(&vx, &vy);
|
||||||
|
vx *= wxPG_PIXELS_PER_UNIT;
|
||||||
|
vy *= wxPG_PIXELS_PER_UNIT;
|
||||||
|
r.x -= vx;
|
||||||
|
r.y -= vy;
|
||||||
RefreshRect(r);
|
RefreshRect(r);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user