]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/listctrl.cpp
added common notebookbase source file
[wxWidgets.git] / src / msw / listctrl.cpp
index 6f8fe1c01a4906954280ca14ea0418bcce05add2..3bd2d2cfa833e709e4c8454725d8347cfef19505 100644 (file)
@@ -29,6 +29,8 @@
     #pragma hdrstop
 #endif
 
+#if wxUSE_LISTCTRL
+
 #ifdef __WIN95__
 
 #ifndef WX_PRECOMP
@@ -45,7 +47,7 @@
 
 #include "wx/msw/private.h"
 
-#ifdef __GNUWIN32_OLD__
+#if ((defined(__GNUWIN32_OLD__) || defined(__TWIN32__)) && !defined(__CYGWIN10__))
     #include "wx/msw/gnuwin32/extra.h"
 #else
     #include <commctrl.h>
@@ -190,6 +192,10 @@ bool wxListCtrl::Create(wxWindow *parent,
 
     DWORD wstyle = WS_VISIBLE | WS_CHILD | WS_TABSTOP |
                    LVS_SHAREIMAGELISTS | LVS_SHOWSELALWAYS;
+
+    if ( m_windowStyle & wxCLIP_SIBLINGS )
+        wstyle |= WS_CLIPSIBLINGS;
+
     if ( wxStyleHasBorder(m_windowStyle) )
         wstyle |= WS_BORDER;
     m_baseStyle = wstyle;
@@ -1049,6 +1055,8 @@ wxTextCtrl* wxListCtrl::EditLabel(long item, wxClassInfo* textControlClass)
 {
     wxASSERT( (textControlClass->IsKindOf(CLASSINFO(wxTextCtrl))) );
 
+    // VS: ListView_EditLabel requires that the list has focus.  
+    SetFocus();
     HWND hWnd = (HWND) ListView_EditLabel(GetHwnd(), item);
 
     if (m_textCtrl)
@@ -1984,7 +1992,8 @@ static void wxConvertToMSWListItem(const wxListCtrl *ctrl, wxListItem& info, LV_
         }
         else
         {
-            lvItem.pszText = WXSTRINGCAST info.m_text;
+            // pszText is not const, hence the cast
+            lvItem.pszText = (wxChar *)info.m_text.c_str();
             if ( lvItem.pszText )
                 lvItem.cchTextMax = info.m_text.Length();
             else
@@ -2015,3 +2024,4 @@ wxListEvent::wxListEvent(wxEventType commandType, int id)
 
 #endif // __WIN95__
 
+#endif // wxUSE_LISTCTRL