]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_radio.i
fixed memory leaks when reading invalid GIFs
[wxWidgets.git] / wxPython / src / _radio.i
index 4e4dde6728b8bb2b0f1b7dfc28238f9a26115abb..0294f6cf85fea0913da2a9c4e5dfef9873f20f1f 100644 (file)
@@ -21,6 +21,8 @@ MAKE_CONST_WXSTRING(RadioButtonNameStr);
 //---------------------------------------------------------------------------
 %newgroup
 
+MustHaveApp(wxRadioBox);
+
 class wxRadioBox : public wxControl
 {
 public:
@@ -29,23 +31,21 @@ public:
     %pythonAppend  wxRadioBox         "self._setOORInfo(self)"
     %pythonAppend  wxRadioBox()       ""
 
-    wxRadioBox(wxWindow* parent, wxWindowID id,
-               const wxString& label,
+    wxRadioBox(wxWindow* parent, wxWindowID id=-1,
+               const wxString& label = wxPyEmptyString,
                const wxPoint& pos = wxDefaultPosition,
                const wxSize& size = wxDefaultSize,
-               //int choices = 0, wxString* choices_array = NULL,
                const wxArrayString& choices = wxPyEmptyStringArray,
                int majorDimension = 0,
                long style = wxRA_HORIZONTAL,
                const wxValidator& validator = wxDefaultValidator,
                const wxString& name = wxPyRadioBoxNameStr);
-    %name(PreRadioBox)wxRadioBox();
+    %RenameCtor(PreRadioBox, wxRadioBox());
 
-    bool Create(wxWindow* parent, wxWindowID id,
-                const wxString& label,
+    bool Create(wxWindow* parent, wxWindowID id=-1,
+                const wxString& label = wxPyEmptyString,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
-                //int choices = 0, wxString* choices_array = NULL,
                 const wxArrayString& choices = wxPyEmptyStringArray,
                 int majorDimension = 0,
                 long style = wxRA_HORIZONTAL,
@@ -59,7 +59,7 @@ public:
     virtual bool SetStringSelection(const wxString& s);
 
     // string access
-    virtual int GetCount() const;
+    virtual size_t GetCount() const;
     virtual int FindString(const wxString& s) const;
     
     virtual wxString GetString(int n) const;
@@ -68,47 +68,68 @@ public:
     %pythoncode { SetItemLabel = SetString };
 
     // change the individual radio button state
-    %name(EnableItem) virtual void Enable(int n, bool enable = True);
-    %name(ShowItem) virtual void Show(int n, bool show = True);
+    %Rename(EnableItem,  virtual void, Enable(unsigned int n, bool enable = true));
+    %Rename(ShowItem,  virtual void, Show(unsigned int n, bool show = true));
+    virtual bool IsItemEnabled(unsigned int n) const;
+    virtual bool IsItemShown(unsigned int n) const;
 
-#ifndef __WXGTK__
     // layout parameters
-    virtual int GetColumnCount() const;
-    virtual int GetRowCount() const;
+    virtual unsigned int GetColumnCount() const;
+    virtual unsigned int GetRowCount() const;
 
     // return the item above/below/to the left/right of the given one
     int GetNextItem(int item, wxDirection dir, long style) const;
-#else
-    %extend {
-        int GetColumnCount() const { return -1; }
-        int GetRowCount() const { return -1; }
-        int GetNextItem(int item, wxDirection dir, long style) const { return -1; }
-    }
-#endif
+
+    // set the tooltip text for a radio item, empty string unsets any tooltip
+    void SetItemToolTip(unsigned int item, const wxString& text);
+
+    // get the individual items tooltip; returns NULL if none
+    wxToolTip *GetItemToolTip(unsigned int item) const;
+
+    // set helptext for a particular item, pass an empty string to erase it
+    void SetItemHelpText(unsigned int n, const wxString& helpText);
+
+    // retrieve helptext for a particular item, empty string means no help text
+    wxString GetItemHelpText(unsigned int n) const;
+
+// Hmmm...  This is protected on wxMSW.    
+//    virtual int GetItemFromPoint(const wxPoint& pt) const;
+
+//    bool IsValid(int n) const;  ** not public
         
+    static wxVisualAttributes
+    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    %property(ColumnCount, GetColumnCount, doc="See `GetColumnCount`");
+    %property(Count, GetCount, doc="See `GetCount`");
+    %property(RowCount, GetRowCount, doc="See `GetRowCount`");
+    %property(Selection, GetSelection, SetSelection, doc="See `GetSelection` and `SetSelection`");
+    %property(StringSelection, GetStringSelection, SetStringSelection, doc="See `GetStringSelection` and `SetStringSelection`");    
 };
     
 
 //---------------------------------------------------------------------------
 %newgroup
 
+MustHaveApp(wxRadioButton);
+
 class wxRadioButton : public wxControl
 {
 public:
     %pythonAppend wxRadioButton         "self._setOORInfo(self)"
     %pythonAppend wxRadioButton()       ""
 
-    wxRadioButton(wxWindow* parent, wxWindowID id,
-                  const wxString& label,
+    wxRadioButton(wxWindow* parent, wxWindowID id=-1,
+                  const wxString& label = wxPyEmptyString,
                   const wxPoint& pos = wxDefaultPosition,
                   const wxSize& size = wxDefaultSize,
                   long style = 0,
                   const wxValidator& validator = wxDefaultValidator,
                   const wxString& name = wxPyRadioButtonNameStr);
-    %name(PreRadioButton)wxRadioButton();
+    %RenameCtor(PreRadioButton, wxRadioButton());
 
-    bool Create(wxWindow* parent, wxWindowID id,
-                  const wxString& label,
+    bool Create(wxWindow* parent, wxWindowID id=-1,
+                  const wxString& label = wxPyEmptyString,
                   const wxPoint& pos = wxDefaultPosition,
                   const wxSize& size = wxDefaultSize,
                   long style = 0,
@@ -117,6 +138,11 @@ public:
 
     bool GetValue();
     void SetValue(bool value);
+
+    static wxVisualAttributes
+    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    %property(Value, GetValue, SetValue, doc="See `GetValue` and `SetValue`");
 };
 
 //---------------------------------------------------------------------------