]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/datavgen.cpp
Always use FVIRTKEY for the accelerators under MSW.
[wxWidgets.git] / src / generic / datavgen.cpp
index dc0f58a4fe47542f89cf31f9ee89c45033b10bce..a13797b3f6179518439c8516e56189bd5062f6d7 100644 (file)
@@ -1565,6 +1565,13 @@ void wxDataViewMainWindow::OnPaint( wxPaintEvent &WXUNUSED(event) )
 
     // compute which columns needs to be redrawn
     unsigned int cols = GetOwner()->GetColumnCount();
+    if ( !cols )
+    {
+        // we assume that we have at least one column below and painting an
+        // empty control is unnecessary anyhow
+        return;
+    }
+
     unsigned int col_start = 0;
     unsigned int x_start;
     for (x_start = 0; col_start < cols; col_start++)
@@ -2054,6 +2061,7 @@ bool wxDataViewMainWindow::Cleared()
 void wxDataViewMainWindow::UpdateDisplay()
 {
     m_dirty = true;
+    m_underMouse = NULL;
 }
 
 void wxDataViewMainWindow::OnInternalIdle()
@@ -4105,7 +4113,11 @@ void wxDataViewCtrl::Select( const wxDataViewItem & item )
         // Unselect all rows before select another in the single select mode
         if (m_clientArea->IsSingleSel())
             m_clientArea->SelectAllRows(false);
+            
         m_clientArea->SelectRow(row, true);
+        
+        // Also set focus to the selected item
+        m_clientArea->ChangeCurrentRow( row );
     }
 }