From: Robert Roebling Date: Mon, 27 Aug 2007 08:35:26 +0000 (+0000) Subject: restored expanders X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/e887bad5f3a10f5b0c1f173c34c694dda283d0cf?ds=inline restored expanders git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index 936dc0f164..aa1a08a028 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -2301,6 +2301,13 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) } } + wxDataViewColumn *expander = GetOwner()->GetExpanderColumn(); + if (!expander) + { + // TODO: last column for RTL support + expander = GetOwner()->GetColumn( 0 ); + } + // redraw all cells for all rows which must be repainted and for all columns wxRect cell_rect; cell_rect.x = x_start; @@ -2314,6 +2321,7 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) if (col->IsHidden()) continue; // skipt it! + for (unsigned int item = item_start; item < item_last; item++) { // get the cell value and set it into the renderer @@ -2333,7 +2341,7 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) ) //Draw the expander here. int indent = node->GetIndentLevel(); - if( col == GetOwner()->GetExpanderColumn() ) + if( col == expander ) { //Calculate the indent first indent = cell_rect.x + GetOwner()->GetIndent() * indent;