]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/controls2.i
wxITEM_FOO instead of wxItem_Foo, for the sake of consistency
[wxWidgets.git] / wxPython / src / controls2.i
index 5f0077a7bfa6166eb12f1ab41af006b05f8792bf..2ad60661ccc8f4a96503413cb48cad65117ed36e 100644 (file)
 
 
 //----------------------------------------------------------------------
+%{
+    // Put some wx default wxChar* values into wxStrings.
+    const wxChar* wxListCtrlNameStr = _T("wxListCtrl");
+    DECLARE_DEF_STRING(ListCtrlNameStr);
+
+    const wxChar* wx_TreeCtrlNameStr = _T("wxTreeCtrl");
+    DECLARE_DEF_STRING(_TreeCtrlNameStr);
+    DECLARE_DEF_STRING(DirDialogDefaultFolderStr);
+
+    static const wxString wxPyEmptyString(wxT(""));
+%}
+
 //----------------------------------------------------------------------
 
 enum {
@@ -365,7 +377,7 @@ public:
                  const wxSize& size,
                  long style,
                  const wxValidator& validator,
-                 char* name) :
+                 const wxString& name) :
         wxListCtrl(parent, id, pos, size, style, validator, name) {}
 
     bool Create(wxWindow* parent, wxWindowID id,
@@ -373,7 +385,7 @@ public:
                 const wxSize& size,
                 long style,
                 const wxValidator& validator,
-                char* name) {
+                const wxString& name) {
         return wxListCtrl::Create(parent, id, pos, size, style, validator, name);
     }
 
@@ -400,7 +412,7 @@ public:
                  const wxSize& size = wxDefaultSize,
                  long style = wxLC_ICON,
                  const wxValidator& validator = wxDefaultValidator,
-                 char* name = "listCtrl");
+                 const wxString& name = wxPyListCtrlNameStr);
     %name(wxPreListCtrl)wxPyListCtrl();
 
     bool Create(wxWindow* parent, wxWindowID id = -1,
@@ -408,7 +420,7 @@ public:
                  const wxSize& size = wxDefaultSize,
                  long style = wxLC_ICON,
                  const wxValidator& validator = wxDefaultValidator,
-                 char* name = "listCtrl");
+                 const wxString& name = wxPyListCtrlNameStr);
 
     void _setCallbackInfo(PyObject* self, PyObject* _class);
     %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxListCtrl)"
@@ -701,6 +713,16 @@ public:
 
     def ClearColumnImage(self, col):
         self.SetColumnImage(col, -1)
+
+    def Append(self, entry):
+        '''Append an item to the list control.  The entry parameter should be a
+           sequence with an item for each column'''
+        if len(entry):
+            pos = self.GetItemCount()
+            self.InsertStringItem(pos, str(entry[0]))
+            for i in range(1, len(entry)):
+                self.SetStringItem(pos, i, str(entry[i]))
+            return pos
     "
 };
 
@@ -737,7 +759,7 @@ public:
                 const wxSize& size = wxDefaultSize,
                 long style = wxLC_REPORT,
                 const wxValidator& validator = wxDefaultValidator,
-                const wxString &name = "listctrl" );
+                const wxString& name = wxPyListCtrlNameStr);
     %name(wxPreListView)wxListView();
 
     bool Create( wxWindow *parent,
@@ -746,7 +768,7 @@ public:
                 const wxSize& size = wxDefaultSize,
                 long style = wxLC_REPORT,
                 const wxValidator& validator = wxDefaultValidator,
-                const wxString &name = "listctrl" );
+                const wxString& name = wxPyListCtrlNameStr);
 
     %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
     %pragma(python) addtomethod = "wxPreListView:val._setOORInfo(val)"
@@ -1021,7 +1043,7 @@ public:
                  const wxSize& size,
                  long style,
                  const wxValidator& validator,
-                 char* name) :
+                 const wxString& name) :
         wxTreeCtrl(parent, id, pos, size, style, validator, name) {}
 
     bool Create(wxWindow *parent, wxWindowID id,
@@ -1029,7 +1051,7 @@ public:
                 const wxSize& size,
                 long style,
                 const wxValidator& validator,
-                char* name) {
+                const wxString& name) {
         return wxTreeCtrl::Create(parent, id, pos, size, style, validator, name);
     }
 
@@ -1068,7 +1090,7 @@ public:
                const wxSize& size = wxDefaultSize,
                long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
                const wxValidator& validator = wxDefaultValidator,
-               char* name = "wxTreeCtrl");
+               const wxString& name = wxPy_TreeCtrlNameStr);
     %name(wxPreTreeCtrl)wxPyTreeCtrl();
 
     bool Create(wxWindow *parent, wxWindowID id = -1,
@@ -1076,7 +1098,7 @@ public:
                const wxSize& size = wxDefaultSize,
                long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
                const wxValidator& validator = wxDefaultValidator,
-               char* name = "wxTreeCtrl");
+               const wxString& name = wxPy_TreeCtrlNameStr);
 
     void _setCallbackInfo(PyObject* self, PyObject* _class);
     %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxTreeCtrl)"
@@ -1210,7 +1232,7 @@ public:
                                 size_t before,
                                 const wxString& text,
                                 int image = -1, int selectedImage = -1,
-                                wxTreeItemData *data = NULL);
+                                wxPyTreeItemData *data = NULL);
     wxTreeItemId AppendItem(const wxTreeItemId& parent,
                             const wxString& text,
                             int image = -1, int selectedImage = -1,
@@ -1323,26 +1345,26 @@ class wxGenericDirCtrl: public wxControl
 {
 public:
     wxGenericDirCtrl(wxWindow *parent, const wxWindowID id = -1,
-                     const char* dir = wxDirDialogDefaultFolderStr,
+                     const wxString& dir = wxPyDirDialogDefaultFolderStr,
                      const wxPoint& pos = wxDefaultPosition,
                      const wxSize& size = wxDefaultSize,
                      long style = wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER,
-                     const char* filter = wxEmptyString,
+                     const wxString& filter = wxPyEmptyString,
                      int defaultFilter = 0,
-                     const char* name = "dirCtrl" );
+                     const wxString& name = wxPy_TreeCtrlNameStr);
     %name(wxPreGenericDirCtrl)wxGenericDirCtrl();
 
     %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
     %pragma(python) addtomethod = "wxPreGenericDirCtrl:val._setOORInfo(val)"
 
     bool Create(wxWindow *parent, const wxWindowID id = -1,
-                const char* dir = wxDirDialogDefaultFolderStr,
+                const wxString& dir = wxPyDirDialogDefaultFolderStr,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER,
-                const char* filter = wxEmptyString,
+                const wxString& filter = wxPyEmptyString,
                 int defaultFilter = 0,
-                const char* name = "dirCtrl" );
+                const wxString& name = wxPy_TreeCtrlNameStr);
 
 
     // Try to expand as much of the given path as possible.