]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/my_typemaps.i
Various updates to catch up to wxWidgets CVS
[wxWidgets.git] / wxPython / src / my_typemaps.i
index d9ce9153bf02b9488171a8dd96b09dfe631e9ab3..da6de8d8eb42bb6ceb78fa9eede01166a49b84c9 100644 (file)
 //----------------------------------------------------------------------
 // Typemaps to convert a list of items to an int (size) and an array
 
+%define MAKE_INT_ARRAY_TYPEMAPS(NAME, ARR_NAME)
+    %typemap(in) (int NAME, int* ARR_NAME) {
+        $1 = PyList_Size($input);
+        $2 =  int_LIST_helper($input);
+        if ($2 == NULL) SWIG_fail;
+    }
+
+    %typemap(freearg) (int NAME, int* ARR_NAME) {
+        if ($2) delete [] $2;
+    }
+%enddef
+
+MAKE_INT_ARRAY_TYPEMAPS(widths, widths_field)
+MAKE_INT_ARRAY_TYPEMAPS(styles, styles_field)
+
+    
+
+// Same things for a wxString
 %typemap(in) (int choices, wxString* choices_array ) {
     $1 = PyList_Size($input);
     $2 = wxString_LIST_helper($input);
@@ -24,6 +42,7 @@
 }
 
 
+
 //---------------------------------------------------------------------------
 // wxString typemaps