]> git.saurik.com Git - wxWidgets.git/commitdiff
Fix drawing of expander columns not at 0 position in generic wxDVC.
authorVadim Zeitlin <vadim@wxwidgets.org>
Thu, 21 Jul 2011 13:50:14 +0000 (13:50 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Thu, 21 Jul 2011 13:50:14 +0000 (13:50 +0000)
The drawing code in the generic version of wxDataViewCtrl incorrectly supposed
that the expander column was always at position 0. This resulted in the
expander column not being drawn at all if it was not really the first one.

Fix the test to use wxDataViewCtrl::GetExpanderColumn() to correct this.

Closes #12870.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68321 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/generic/datavgen.cpp

index 84834e7beb0759f481e5acc2c63f4533d9b1c420..c5b8d9d37dff45f4a9156a0b6075a1b5dd238c98 100644 (file)
@@ -1771,8 +1771,11 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) )
 
                 dataitem = node->GetItem();
 
-                if ((i > 0) && model->IsContainer(dataitem) &&
-                    !model->HasContainerColumns(dataitem))
+                // Skip all columns of "container" rows except the expander
+                // column itself unless HasContainerColumns() overrides this.
+                if ( col != GetOwner()->GetExpanderColumn() &&
+                        model->IsContainer(dataitem) &&
+                            !model->HasContainerColumns(dataitem) )
                     continue;
             }
             else