More wxAPI for radiobox of PalmOS.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Włodzimierz Skiba 2005-02-22 07:22:11 +00:00
parent e84e2baf03
commit 11f4a34413
3 changed files with 54 additions and 18 deletions

View File

@ -132,6 +132,14 @@ protected:
// 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;
@ -143,14 +151,6 @@ private:
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()
};

View 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 bool Enable(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 SetLabel(const wxString& label);
virtual wxString GetLabel();
virtual int GetColumnCount() const;
virtual int GetRowCount() const;
@ -106,12 +114,13 @@ public:
virtual wxPoint GetClientAreaOrigin() const;
virtual bool Show(bool show = true);
void SetFocus();
virtual bool Enable(bool enable = true);
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; }

View File

@ -177,6 +177,8 @@ bool wxRadioBox::Create(wxWindow *parent,
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;
@ -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)
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++;
}
}
@ -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
@ -345,12 +352,9 @@ bool wxRadioBox::Enable(int item, bool enable)
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
@ -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)
{
}