]> git.saurik.com Git - wxWidgets.git/commitdiff
Some properties for things with lists of items.
authorRobin Dunn <robin@alldunn.com>
Tue, 5 Sep 2006 01:05:51 +0000 (01:05 +0000)
committerRobin Dunn <robin@alldunn.com>
Tue, 5 Sep 2006 01:05:51 +0000 (01:05 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

wxPython/src/_control.i
wxPython/src/_menu.i
wxPython/src/_statusbar.i

index 9ecfec7c4f5d8e383b228434a7b18c2238e91d47..10b7b43f45ec73a79d5a464177361387f1f07b54 100644 (file)
@@ -277,6 +277,18 @@ is selected.", "");
 slightly more natural for controls which support multiple selection.", "");
     
 
+    %pythoncode {
+        def GetItems(self):
+            """Return a list of the strings in the control"""
+            return [self.GetString(i) for i in xrange(self.GetCount())]
+            
+        def SetItems(self, items):
+            """Clear and set the strings in the control from a list"""
+            self.Clear()
+            for i in items:
+                self.Append(i)        
+    }
+    %property(Items, GetItems, SetItems);
     
 };
 
index a0d58d7b40cfcf803475a6bbf4745bc2db690cb7..d1122ce95a2116a8b1e78fa07f1742f0bec4f676 100644 (file)
@@ -321,6 +321,22 @@ public:
         static bool GetAutoWindowMenu() { return false; }
     }
 #endif
+
+    %pythoncode {
+        def GetMenus(self):
+            """Return a list of (menu, label) items for the menus in the MenuBar. """
+            return [(self.GetMenu(i), self.GetLabelTop(i)) 
+                    for i in range(self.GetMenuCount())]
+            
+        def SetMenus(self, items):
+            """Clear and add new menus to the MenuBar from a list of (menu, label) items. """
+            for i in range(self.GetMenuCount()-1, -1, -1):
+                self.Remove(i)
+            for m, l in items:
+                self.Append(m, l)
+    }
+    %property(Menus, GetMenus, SetMenus);
+    
 };
 
 //---------------------------------------------------------------------------
index 6988a190a5191f10f9124bb7e8e9b10be4cfaec0..f5ddb0641112931abcbfeaf3f2b7093e0892eeae 100644 (file)
@@ -98,6 +98,19 @@ public:
 
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    %pythoncode {
+        def GetFields(self):
+            """Return a list of field values in the status bar. """
+            return [self.GetStatusText(i) for i in range(self.GetFieldsCount())]
+            
+        def SetFields(self, items):
+            """Set the values of the statusbar fields from a list of strings. """
+            self.SetFieldsCount(len(items))
+            for i in range(len(items)):
+                self.SetStatusText(items[i], i)
+    }
+    %property(Fields, GetFields, SetFields);
 };