]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/listctrl.cpp
fix for opening files with VC++ 8 (closes bug 994337)
[wxWidgets.git] / src / generic / listctrl.cpp
index c561337dae48f30ce5cd34b0e08008a7946917e3..066e416df9c3b384fffc3498090bb3b340cb72c9 100644 (file)
@@ -1668,11 +1668,13 @@ wxListHeaderWindow::wxListHeaderWindow( wxWindow *win,
     wxVisualAttributes attr = wxPanel::GetClassDefaultAttributes();
     SetOwnForegroundColour( attr.colFg );
     SetOwnBackgroundColour( attr.colBg );
-    SetOwnFont( attr.font );
+    if (!m_hasFont)
+        SetOwnFont( attr.font );
 #else
     SetOwnForegroundColour( wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT));
     SetOwnBackgroundColour( wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE));
-    SetOwnFont( wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT ));
+    if (!m_hasFont)
+        SetOwnFont( wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT ));
 #endif
 }
 
@@ -2103,7 +2105,7 @@ void wxListTextCtrl::OnKeyUp( wxKeyEvent &event )
         sx = parentSize.x - myPos.x;
     if (mySize.x > sx)
         sx = mySize.x;
-    SetSize(sx, wxDefaultSize.y);
+    SetSize(sx, wxDefaultCoord);
 
     event.Skip();
 }
@@ -2214,7 +2216,8 @@ wxListMainWindow::wxListMainWindow( wxWindow *parent,
     wxVisualAttributes attr = wxGenericListCtrl::GetClassDefaultAttributes();
     SetOwnForegroundColour( attr.colFg );
     SetOwnBackgroundColour( attr.colBg );
-    SetOwnFont( attr.font );
+    if (!m_hasFont)
+        SetOwnFont( attr.font );
 }
 
 wxListMainWindow::~wxListMainWindow()
@@ -2981,12 +2984,7 @@ void wxListMainWindow::OnMouse( wxMouseEvent &event )
         m_lineLastClicked = current;
 
         size_t oldCurrent = m_current;
-        bool cmdModifierDown;
-#ifdef __WXMAC__
-        cmdModifierDown = event.MetaDown();
-#else
-        cmdModifierDown = event.ControlDown();
-#endif
+        bool cmdModifierDown = event.CmdDown();
         if ( IsSingleSel() || !(cmdModifierDown || event.ShiftDown()) )
         {
             HighlightAll( false );
@@ -4322,10 +4320,12 @@ void wxListMainWindow::InsertItem( wxListItem &item )
 {
     wxASSERT_MSG( !IsVirtual(), _T("can't be used with virtual control") );
 
-    size_t count = GetItemCount();
-    wxCHECK_RET( item.m_itemId >= 0 && (size_t)item.m_itemId <= count,
-                 _T("invalid item index") );
+    int count = GetItemCount();
+    wxCHECK_RET( item.m_itemId >= 0, _T("invalid item index") );
 
+    if (item.m_itemId > count)
+        item.m_itemId = count;
+    
     size_t id = item.m_itemId;
 
     m_dirty = true;