]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/listctrl.cpp
fix redistribution of the extra space between sizer items
[wxWidgets.git] / src / msw / listctrl.cpp
index fdbbd863e6736b469ca3bfe72380f23009bde4ba..4b38fc9819da39c8f74df59bbb7975b640d1d8b2 100644 (file)
@@ -213,7 +213,74 @@ DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_ACTIVATED)
 DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_ITEM_FOCUSED)
 DEFINE_EVENT_TYPE(wxEVT_COMMAND_LIST_CACHE_HINT)
 
+#if wxUSE_EXTENDED_RTTI
+WX_DEFINE_FLAGS( wxListCtrlStyle )
+
+WX_BEGIN_FLAGS( wxListCtrlStyle )
+    // new style border flags, we put them first to
+    // use them for streaming out
+    WX_FLAGS_MEMBER(wxBORDER_SIMPLE)
+    WX_FLAGS_MEMBER(wxBORDER_SUNKEN)
+    WX_FLAGS_MEMBER(wxBORDER_DOUBLE)
+    WX_FLAGS_MEMBER(wxBORDER_RAISED)
+    WX_FLAGS_MEMBER(wxBORDER_STATIC)
+    WX_FLAGS_MEMBER(wxBORDER_NONE)
+    
+    // old style border flags
+    WX_FLAGS_MEMBER(wxSIMPLE_BORDER)
+    WX_FLAGS_MEMBER(wxSUNKEN_BORDER)
+    WX_FLAGS_MEMBER(wxDOUBLE_BORDER)
+    WX_FLAGS_MEMBER(wxRAISED_BORDER)
+    WX_FLAGS_MEMBER(wxSTATIC_BORDER)
+    WX_FLAGS_MEMBER(wxNO_BORDER)
+
+    // standard window styles
+    WX_FLAGS_MEMBER(wxTAB_TRAVERSAL)
+    WX_FLAGS_MEMBER(wxCLIP_CHILDREN)
+    WX_FLAGS_MEMBER(wxTRANSPARENT_WINDOW)
+    WX_FLAGS_MEMBER(wxWANTS_CHARS)
+    WX_FLAGS_MEMBER(wxNO_FULL_REPAINT_ON_RESIZE)
+    WX_FLAGS_MEMBER(wxALWAYS_SHOW_SB )
+    WX_FLAGS_MEMBER(wxVSCROLL)
+    WX_FLAGS_MEMBER(wxHSCROLL)
+
+    WX_FLAGS_MEMBER(wxLC_LIST)
+    WX_FLAGS_MEMBER(wxLC_REPORT)
+    WX_FLAGS_MEMBER(wxLC_ICON)
+    WX_FLAGS_MEMBER(wxLC_SMALL_ICON)
+    WX_FLAGS_MEMBER(wxLC_ALIGN_TOP)
+    WX_FLAGS_MEMBER(wxLC_ALIGN_LEFT)
+    WX_FLAGS_MEMBER(wxLC_AUTOARRANGE)
+    WX_FLAGS_MEMBER(wxLC_USER_TEXT)
+    WX_FLAGS_MEMBER(wxLC_EDIT_LABELS)
+    WX_FLAGS_MEMBER(wxLC_NO_HEADER)
+    WX_FLAGS_MEMBER(wxLC_SINGLE_SEL)
+    WX_FLAGS_MEMBER(wxLC_SORT_ASCENDING)
+    WX_FLAGS_MEMBER(wxLC_SORT_DESCENDING)
+    WX_FLAGS_MEMBER(wxLC_VIRTUAL)
+
+WX_END_FLAGS( wxListCtrlStyle )
+
+IMPLEMENT_DYNAMIC_CLASS_XTI(wxListCtrl, wxControl,"wx/listctrl.h")
+
+WX_BEGIN_PROPERTIES_TABLE(wxListCtrl)
+    WX_EVENT_PROPERTY( TextUpdated , wxEVT_COMMAND_TEXT_UPDATED , wxCommandEvent ) 
+
+    WX_PROPERTY_FLAGS( WindowStyle , wxListCtrlStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
+WX_END_PROPERTIES_TABLE()
+
+WX_BEGIN_HANDLERS_TABLE(wxListCtrl)
+WX_END_HANDLERS_TABLE()
+
+WX_CONSTRUCTOR_5( wxListCtrl , wxWindow* , Parent , wxWindowID , Id , wxPoint , Position , wxSize , Size , long , WindowStyle ) 
+
+/*
+ TODO : Expose more information of a list's layout etc. via appropriate objects (à la NotebookPageInfo)
+*/
+#else
 IMPLEMENT_DYNAMIC_CLASS(wxListCtrl, wxControl)
+#endif
+
 IMPLEMENT_DYNAMIC_CLASS(wxListView, wxListCtrl)
 IMPLEMENT_DYNAMIC_CLASS(wxListItem, wxObject)