X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6e6b35578d9be94739e1f9ebadcb57d9a483db6a..b8aab4d28d578817139f9038deec03e9609a50c8:/wxPython/contrib/gizmos/gizmos.i diff --git a/wxPython/contrib/gizmos/gizmos.i b/wxPython/contrib/gizmos/gizmos.i index 079cc312a9..0c272612c7 100644 --- a/wxPython/contrib/gizmos/gizmos.i +++ b/wxPython/contrib/gizmos/gizmos.i @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -47,22 +48,20 @@ MAKE_CONST_WXSTRING2(DynamicSashNameStr, wxT("dynamicSashWindow")); MAKE_CONST_WXSTRING2(EditableListBoxNameStr, wxT("editableListBox")); MAKE_CONST_WXSTRING2(TreeListCtrlNameStr, wxT("treelistctrl")); - +MAKE_CONST_WXSTRING(StaticPictureNameStr); + MAKE_CONST_WXSTRING_NOSWIG(EmptyString); - -%include _gizmos_rename.i - //--------------------------------------------------------------------------- enum { - wxEVT_DYNAMIC_SASH_SPLIT, - wxEVT_DYNAMIC_SASH_UNIFY, - wxDS_MANAGE_SCROLLBARS, wxDS_DRAG_CORNER, }; +%constant wxEventType wxEVT_DYNAMIC_SASH_SPLIT; +%constant wxEventType wxEVT_DYNAMIC_SASH_UNIFY; + /* wxDynamicSashSplitEvents are sent to your view by wxDynamicSashWindow @@ -459,6 +458,8 @@ public: bool shown = true, wxTreeListColumnAlign alignment = wxTL_ALIGN_LEFT); + ~wxTreeListColumnInfo(); + bool GetShown() const; wxTreeListColumnAlign GetAlignment() const; wxString GetText() const; @@ -580,11 +581,11 @@ public: void SetStateImageList(wxImageList *imageList); void SetButtonsImageList(wxImageList *imageList); - %apply SWIGTYPE *DISOWN { wxImageList *imageList }; + %disownarg( wxImageList *imageList ); void AssignImageList(wxImageList *imageList); void AssignStateImageList(wxImageList *imageList); void AssignButtonsImageList(wxImageList *imageList); - %clear wxImageList *imageList; + %cleardisown( wxImageList *imageList ); // adds a column @@ -669,10 +670,12 @@ public: return data; } + %disownarg( wxPyTreeItemData* data ); void SetItemData(const wxTreeItemId& item, wxPyTreeItemData* data) { data->SetId(item); // set the id self->SetItemData(item, data); } + %cleardisown(wxPyTreeItemData* data ); // [Get|Set]ItemPyData are short-cuts. Also made somewhat crash-proof by // automatically creating data classes. @@ -766,6 +769,7 @@ public: wxTreeItemId *tii = new wxTreeItemId(array.Item(x)); PyObject* item = wxPyConstructObject((void*)tii, wxT("wxTreeItemId"), true); PyList_Append(rval, item); + Py_DECREF(item); } wxPyEndBlockThreads(blocked); return rval; @@ -844,6 +848,8 @@ public: wxTreeItemId GetNext(const wxTreeItemId& item) const; + %disownarg( wxPyTreeItemData* data ); + // add the root node to the tree wxTreeItemId AddRoot(const wxString& text, int image = -1, int selectedImage = -1, @@ -876,6 +882,8 @@ public: int image = -1, int selectedImage = -1, wxPyTreeItemData *data = NULL); + %cleardisown(wxPyTreeItemData* data ); + // delete this item and associated data if any void Delete(const wxTreeItemId& item); @@ -957,7 +965,55 @@ public: }; +//---------------------------------------------------------------------- + +enum +{ + wxSCALE_HORIZONTAL, + wxSCALE_VERTICAL, + wxSCALE_UNIFORM, + wxSCALE_CUSTOM +}; +MustHaveApp(wxStaticPicture); + +class wxStaticPicture : public wxControl +{ +public: + %pythonAppend wxStaticPicture "self._setOORInfo(self)" + %pythonAppend wxStaticPicture() "" + + wxStaticPicture( wxWindow* parent, wxWindowID id=-1, + const wxBitmap& label=wxNullBitmap, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxPyStaticPictureNameStr ); + + %RenameCtor(PreStaticPicture, wxStaticPicture()); + + bool Create( wxWindow* parent, wxWindowID id=-1, + const wxBitmap& label=wxNullBitmap, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxPyStaticPictureNameStr ); + + void SetBitmap( const wxBitmap& bmp ); + wxBitmap GetBitmap() const; + void SetIcon( const wxIcon& icon ); + wxIcon GetIcon() const; + + void SetAlignment( int align ); + int GetAlignment() const; + + void SetScale( int scale ); + int GetScale() const; + + void SetCustomScale( float sx, float sy ); + void GetCustomScale( float* OUTPUT, float* OUTPUT ) const; + +}; //----------------------------------------------------------------------