#include "wx/msw/private.h"
-#ifdef __GNUWIN32__
+#if defined(__GNUWIN32__) && !defined(wxUSE_NORLANDER_HEADERS)
#include "wx/msw/gnuwin32/extra.h"
#else
#include <commctrl.h>
// Create the ListView control.
m_hWnd = (WXHWND)CreateWindowEx(exStyle,
WC_LISTVIEW,
- _T(""),
+ T(""),
wstyle,
x, y, w, h,
GetWinHwnd(GetParent()),
if ( !m_hWnd )
{
- wxLogError(_T("Can't create list control window."));
+ wxLogError(T("Can't create list control window."));
return FALSE;
}
}
#endif // ListView_SetExtendedListViewStyle
- wxSystemSettings settings;
- SetBackgroundColour(settings.GetSystemColour(wxSYS_COLOUR_WINDOW));
+ SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOW));
SetForegroundColour(GetParent()->GetForegroundColour());
SubclassWin(m_hWnd);
m_colCount--;
}
- wxASSERT_MSG( m_colCount == 0, _T("no columns should be left") );
+ wxASSERT_MSG( m_colCount == 0, T("no columns should be left") );
return TRUE;
}
}
else
{
- wxLogDebug(_T("Failed to insert the column '%s' into listview!"),
+ wxLogDebug(T("Failed to insert the column '%s' into listview!"),
lvCol.pszText);
}
event.m_col = hdr->iSubItem;
break;
}
+
case LVN_DELETEALLITEMS:
- {
- eventType = wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS;
- // NM_LISTVIEW* hdr = (NM_LISTVIEW*)lParam;
- event.m_itemIndex = -1;
- break;
- }
+ // what's the sense of generating a wxWin event for this when
+ // it's absolutely not portable?
+#if 0
+ eventType = wxEVT_COMMAND_LIST_DELETE_ALL_ITEMS;
+ event.m_itemIndex = -1;
+#endif // 0
+
+ // return TRUE to suppress all additional LVN_DELETEITEM
+ // notifications - this makes deleting all items from a list ctrl
+ // much faster
+ *result = TRUE;
+ return TRUE;
+
case LVN_DELETEITEM:
{
eventType = wxEVT_COMMAND_LIST_DELETE_ITEM;
{
m_code = 0;
m_itemIndex = 0;
+ m_oldItemIndex = 0;
m_col = 0;
m_cancelled = FALSE;
}