+ // we could avoid recreating it if we don't set/clear the wxLC_VIRTUAL
+ // style, but it is more trouble to do it than not
+#if 0
+ if ( !m_listCtrl || ((flags & wxLC_VIRTUAL) !=
+ (m_listCtrl->GetWindowStyleFlag() & wxLC_VIRTUAL)) )
+#endif
+ {
+ delete m_listCtrl;
+
+ m_listCtrl = new MyListCtrl(this, LIST_CTRL,
+ wxDefaultPosition, wxDefaultSize,
+ flags |
+ wxSUNKEN_BORDER);
+
+ switch ( flags & wxLC_MASK_TYPE )
+ {
+ case wxLC_LIST:
+ InitWithListItems();
+ break;
+
+ case wxLC_ICON:
+ InitWithIconItems(withText);
+ break;
+
+ case wxLC_SMALL_ICON:
+ InitWithIconItems(withText, TRUE);
+ break;
+
+ case wxLC_REPORT:
+ if ( flags & wxLC_VIRTUAL )
+ InitWithVirtualItems();
+ else
+ InitWithReportItems();
+ break;
+
+ default:
+ wxFAIL_MSG( _T("unknown listctrl mode") );
+ }
+ }
+
+#ifdef __WXMSW__
+ SendSizeEvent();
+#endif
+