]> git.saurik.com Git - wxWidgets.git/commitdiff
More wxAPI for radiobox of PalmOS.
authorWłodzimierz Skiba <abx@abx.art.pl>
Tue, 22 Feb 2005 07:22:11 +0000 (07:22 +0000)
committerWłodzimierz Skiba <abx@abx.art.pl>
Tue, 22 Feb 2005 07:22:11 +0000 (07:22 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/palmos/control.h
include/wx/palmos/radiobox.h
src/palmos/radiobox.cpp

index 18bd43e88b8343dc0a0b226217ba729fa59c4055..94931bcce238408a29eec5ea8c81214b99b4dd86 100644 (file)
@@ -132,6 +132,14 @@ protected:
     // holds the ids (not HWNDs!) of the sub controls
     wxArrayLong m_subControls;
 
     // holds the ids (not HWNDs!) of the sub controls
     wxArrayLong m_subControls;
 
+    // m_label stores label in case of wxButton, wxCheckBox, wxToggleButton etc.
+    // We must ensure that it persists for as long as it is being displayed
+    // (that is, for as long as the control is displayed or until we call
+    // CtlSetLabel() with a new string), and we must free the string after
+    // it is no longer in use (typically after the form containing the
+    // control is freed).
+    wxString m_label;
+
 private:
 
     bool m_palmControl:1;
 private:
 
     bool m_palmControl:1;
@@ -143,14 +151,6 @@ private:
     virtual void DoGetBounds( RectangleType &rect ) const;
     virtual void DoSetBounds( RectangleType &rect );
 
     virtual void DoGetBounds( RectangleType &rect ) const;
     virtual void DoSetBounds( RectangleType &rect );
 
-    // m_label stores label in case of wxButton, wxCheckBox, wxToggleButton etc.
-    // We must ensure that it persists for as long as it is being displayed
-    // (that is, for as long as the control is displayed or until we call
-    // CtlSetLabel() with a new string), and we must free the string after
-    // it is no longer in use (typically after the form containing the
-    // control is freed).
-    wxString m_label;
-
     DECLARE_DYNAMIC_CLASS_NO_COPY(wxControl)
     DECLARE_EVENT_TABLE()
 };
     DECLARE_DYNAMIC_CLASS_NO_COPY(wxControl)
     DECLARE_EVENT_TABLE()
 };
index 5ca125b1e785f85a594db4041ce12339193c8414..c69f7a951f0eae272f562c411ccdbaacb7faccc1 100644 (file)
@@ -95,8 +95,16 @@ public:
     virtual int GetCount() const;
     virtual wxString GetString(int n) const;
     virtual void SetString(int n, const wxString& label);
     virtual int GetCount() const;
     virtual wxString GetString(int n) const;
     virtual void SetString(int n, const wxString& label);
+
+    virtual bool Enable(bool enable = true);
     virtual bool Enable(int n, bool enable = true);
     virtual bool Enable(int n, bool enable = true);
+
+    virtual bool Show(bool show = true);
     virtual void Show(int n, bool show = true);
     virtual void Show(int n, bool show = true);
+
+    virtual void SetLabel(const wxString& label);
+    virtual wxString GetLabel();
+
     virtual int GetColumnCount() const;
     virtual int GetRowCount() const;
 
     virtual int GetColumnCount() const;
     virtual int GetRowCount() const;
 
@@ -106,12 +114,13 @@ public:
 
     virtual wxPoint GetClientAreaOrigin() const;
 
 
     virtual wxPoint GetClientAreaOrigin() const;
 
-    virtual bool Show(bool show = true);
     void SetFocus();
     void SetFocus();
-    virtual bool Enable(bool enable = true);
     void SetLabelFont(const wxFont& WXUNUSED(font)) {};
     void SetButtonFont(const wxFont& font) { SetFont(font); }
 
     void SetLabelFont(const wxFont& WXUNUSED(font)) {};
     void SetButtonFont(const wxFont& font) { SetFont(font); }
 
+    virtual void Refresh( bool eraseBackground = true,
+                          const wxRect *rect = NULL );
+
     void Command(wxCommandEvent& event);
 
     int GetNumberOfRowsOrCols() const { return m_noRowsOrCols; }
     void Command(wxCommandEvent& event);
 
     int GetNumberOfRowsOrCols() const { return m_noRowsOrCols; }
index 80ec1b610310f6835f73602fcc182b433b44928d..1031b08ccb82b30f82e76c6e5e3fbffd6a4341c6 100644 (file)
@@ -177,6 +177,8 @@ bool wxRadioBox::Create(wxWindow *parent,
     if(m_pos.y==wxDefaultCoord)
         m_pos.y=0;
 
     if(m_pos.y==wxDefaultCoord)
         m_pos.y=0;
 
+    m_label = title;
+
     if(!wxControl::Create(parent, id, m_pos, m_size, style, val, name))
         return false;
 
     if(!wxControl::Create(parent, id, m_pos, m_size, style, val, name))
         return false;
 
@@ -273,7 +275,9 @@ void wxRadioBox::DoMoveWindow(int x, int y, int width, int height)
                 end.y = (use_cols ? ((j+1)*m_size.y)/minor : ((k+1)*m_size.y)/m_majorDim);
                 wxRadioButton* rb = GetRadioButton(i);
                 if(rb)
                 end.y = (use_cols ? ((j+1)*m_size.y)/minor : ((k+1)*m_size.y)/m_majorDim);
                 wxRadioButton* rb = GetRadioButton(i);
                 if(rb)
-                    rb->SetSize(end.x-start.x-1,end.y-start.y-1);
+                {
+                    rb->SetSize(start.x,start.y,end.x-start.x-1,end.y-start.y-1);
+                }
                 i++;
             }
         }
                 i++;
             }
         }
@@ -331,9 +335,12 @@ void wxRadioBox::SetFocus()
 {
 }
 
 {
 }
 
-bool wxRadioBox::Show(bool show)
+// Enable all subcontrols
+bool wxRadioBox::Enable(bool enable)
 {
 {
-    return false;
+    for(int i=0; i<GetCount(); i++)
+        Enable(i, enable);
+    return true;
 }
 
 // Enable a specific button
 }
 
 // Enable a specific button
@@ -345,12 +352,9 @@ bool wxRadioBox::Enable(int item, bool enable)
     return false;
 }
 
     return false;
 }
 
-// Enable all subcontrols
-bool wxRadioBox::Enable(bool enable)
+bool wxRadioBox::Show(bool show)
 {
 {
-    for(int i=0; i<GetCount(); i++)
-        Enable(i, enable);
-    return true;
+    return false;
 }
 
 // Show a specific button
 }
 
 // Show a specific button
@@ -358,6 +362,29 @@ void wxRadioBox::Show(int item, bool show)
 {
 }
 
 {
 }
 
+wxString wxRadioBox::GetLabel()
+{
+    return m_label;
+}
+
+void wxRadioBox::SetLabel(const wxString& label)
+{
+    m_label = label;
+}
+
+void wxRadioBox::Refresh(bool eraseBack, const wxRect *rect)
+{
+    wxRect area = GetRect();
+
+    if(rect)
+    {
+        area.Offset(rect->GetPosition());
+        area.SetSize(rect->GetSize());
+    }
+
+    GetParent()->Refresh( eraseBack , &area );
+}
+
 void wxRadioBox::Command(wxCommandEvent & event)
 {
 }
 void wxRadioBox::Command(wxCommandEvent & event)
 {
 }