git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62372
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
wxPGProperty* property ) const;
/** Draws items from topitemy to bottomitemy */
wxPGProperty* property ) const;
/** Draws items from topitemy to bottomitemy */
- void DrawItems( wxDC& dc, unsigned int topitemy, unsigned int bottomitemy,
- const wxRect* clip_rect = (const wxRect*) NULL );
+ void DrawItems( wxDC& dc,
+ unsigned int topItemY,
+ unsigned int bottomItemY,
+ const wxRect* drawRect = NULL );
// Translate wxKeyEvent to wxPG_ACTION_XXX
int KeyEventToActions(wxKeyEvent &event, int* pSecond) const;
// Translate wxKeyEvent to wxPG_ACTION_XXX
int KeyEventToActions(wxKeyEvent &event, int* pSecond) const;
// topy and bottomy are already unscrolled (ie. physical)
//
void wxPropertyGrid::DrawItems( wxDC& dc,
// topy and bottomy are already unscrolled (ie. physical)
//
void wxPropertyGrid::DrawItems( wxDC& dc,
- unsigned int topy,
- unsigned int bottomy,
+ unsigned int topItemY,
+ unsigned int bottomItemY,
const wxRect* drawRect )
{
const wxRect* drawRect )
{
- if ( m_frozen || m_height < 1 || bottomy < topy || !m_pState )
+ if ( m_frozen ||
+ m_height < 1 ||
+ bottomItemY < topItemY ||
+ !m_pState )
return;
m_pState->EnsureVirtualHeight();
return;
m_pState->EnsureVirtualHeight();
wxRect tempDrawRect;
if ( !drawRect )
{
wxRect tempDrawRect;
if ( !drawRect )
{
- tempDrawRect = wxRect(0, topy,
+ tempDrawRect = wxRect(0, topItemY,
drawRect = &tempDrawRect;
}
drawRect = &tempDrawRect;
}
paintFinishY = DoDrawItems( *dcPtr, drawRect, isBuffered );
int drawBottomY = drawRect->y + drawRect->height;
paintFinishY = DoDrawItems( *dcPtr, drawRect, isBuffered );
int drawBottomY = drawRect->y + drawRect->height;
- // Clear area beyond bottomY?
+ // Clear area beyond last painted property
if ( paintFinishY < drawBottomY )
{
dcPtr->SetPen(m_colEmptySpace);
if ( paintFinishY < drawBottomY )
{
dcPtr->SetPen(m_colEmptySpace);
// -----------------------------------------------------------------------
int wxPropertyGrid::DoDrawItems( wxDC& dc,
// -----------------------------------------------------------------------
int wxPropertyGrid::DoDrawItems( wxDC& dc,
- const wxRect* clipRect,
+ const wxRect* drawRect,
bool isBuffered ) const
{
const wxPGProperty* firstItem;
const wxPGProperty* lastItem;
bool isBuffered ) const
{
const wxPGProperty* firstItem;
const wxPGProperty* lastItem;
- firstItem = DoGetItemAtY(clipRect->y);
- lastItem = DoGetItemAtY(clipRect->y+clipRect->height-1);
+ firstItem = DoGetItemAtY(drawRect->y);
+ lastItem = DoGetItemAtY(drawRect->y+drawRect->height-1);
if ( !lastItem )
lastItem = GetLastItem( wxPG_ITERATE_VISIBLE );
if ( m_frozen || m_height < 1 || firstItem == NULL )
if ( !lastItem )
lastItem = GetLastItem( wxPG_ITERATE_VISIBLE );
if ( m_frozen || m_height < 1 || firstItem == NULL )
- wxCHECK_MSG( !m_pState->m_itemsAdded, clipRect->y, wxT("no items added") );
+ wxCHECK_MSG( !m_pState->m_itemsAdded, drawRect->y,
+ "no items added" );
wxASSERT( m_pState->m_properties->GetChildCount() );
int lh = m_lineHeight;
wxASSERT( m_pState->m_properties->GetChildCount() );
int lh = m_lineHeight;
int firstItemTopY;
int lastItemBottomY;
int firstItemTopY;
int lastItemBottomY;
- firstItemTopY = clipRect->y;
- lastItemBottomY = clipRect->y + clipRect->height;
+ firstItemTopY = drawRect->y;
+ lastItemBottomY = drawRect->y + drawRect->height;
// Align y coordinates to item boundaries
firstItemTopY -= firstItemTopY % lh;
// Align y coordinates to item boundaries
firstItemTopY -= firstItemTopY % lh;
lastItemBottomY -= 1;
// Entire range outside scrolled, visible area?
lastItemBottomY -= 1;
// Entire range outside scrolled, visible area?
- if ( firstItemTopY >= (int)m_pState->GetVirtualHeight() || lastItemBottomY <= 0 )
- return clipRect->y;
-
- wxCHECK_MSG( firstItemTopY < lastItemBottomY, clipRect->y, wxT("invalid y values") );
+ if ( firstItemTopY >= (int)m_pState->GetVirtualHeight() ||
+ lastItemBottomY <= 0 )
+ return drawRect->y;
+ wxCHECK_MSG( firstItemTopY < lastItemBottomY,
+ drawRect->y,
+ "invalid y values" );
- wxLogDebug(wxT(" -> DoDrawItems ( \"%s\" -> \"%s\", height=%i (ch=%i), clipRect = 0x%lX )"),
+ wxLogDebug(" -> DoDrawItems ( \"%s\" -> \"%s\"
+ "height=%i (ch=%i), drawRect = 0x%lX )",
firstItem->GetLabel().c_str(),
lastItem->GetLabel().c_str(),
(int)(lastItemBottomY - firstItemTopY),
(int)m_height,
firstItem->GetLabel().c_str(),
lastItem->GetLabel().c_str(),
(int)(lastItemBottomY - firstItemTopY),
(int)m_height,
- (unsigned long)clipRect );
+ (unsigned long)drawRect );
//
// With wxPG_DOUBLE_BUFFER, do double buffering
//
// With wxPG_DOUBLE_BUFFER, do double buffering
- // - buffer's y = 0, so align cliprect and coordinates to that
+ // - buffer's y = 0, so align drawRect and coordinates to that
//
#if wxPG_DOUBLE_BUFFER
//
#if wxPG_DOUBLE_BUFFER
- xRelMod = clipRect->x;
- yRelMod = clipRect->y;
+ xRelMod = drawRect->x;
+ yRelMod = drawRect->y;
- // clipRect conversion
- cr2 = *clipRect;
+ // drawRect conversion
+ cr2 = *drawRect;
cr2.x -= xRelMod;
cr2.y -= yRelMod;
cr2.x -= xRelMod;
cr2.y -= yRelMod;
firstItemTopY -= yRelMod;
lastItemBottomY -= yRelMod;
}
firstItemTopY -= yRelMod;
lastItemBottomY -= yRelMod;
}