replaced m_isRadioButton with a virtual function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -22,36 +22,44 @@
|
|||||||
class wxRadioButton: public wxControl
|
class wxRadioButton: public wxControl
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
inline wxRadioButton() {}
|
wxRadioButton() { }
|
||||||
inline wxRadioButton( wxWindow *parent, wxWindowID id,
|
wxRadioButton( wxWindow *parent,
|
||||||
const wxString& label,
|
wxWindowID id,
|
||||||
const wxPoint& pos = wxDefaultPosition,
|
const wxString& label,
|
||||||
const wxSize& size = wxDefaultSize, long style = 0,
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
const wxValidator& validator = wxDefaultValidator,
|
const wxSize& size = wxDefaultSize,
|
||||||
const wxString& name = wxRadioButtonNameStr )
|
long style = 0,
|
||||||
|
const wxValidator& validator = wxDefaultValidator,
|
||||||
|
const wxString& name = wxRadioButtonNameStr )
|
||||||
{
|
{
|
||||||
Create( parent, id, label, pos, size, style, validator, name );
|
Create( parent, id, label, pos, size, style, validator, name );
|
||||||
}
|
}
|
||||||
bool Create(wxWindow *parent, wxWindowID id,
|
|
||||||
const wxString& label,
|
bool Create( wxWindow *parent,
|
||||||
const wxPoint& pos = wxDefaultPosition,
|
wxWindowID id,
|
||||||
const wxSize& size = wxDefaultSize, long style = 0,
|
const wxString& label,
|
||||||
const wxValidator& validator = wxDefaultValidator,
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
const wxString& name = wxRadioButtonNameStr );
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxValidator& validator = wxDefaultValidator,
|
||||||
|
const wxString& name = wxRadioButtonNameStr );
|
||||||
|
|
||||||
virtual void SetLabel(const wxString& label);
|
virtual void SetLabel(const wxString& label);
|
||||||
virtual void SetValue(bool val);
|
virtual void SetValue(bool val);
|
||||||
virtual bool GetValue() const;
|
virtual bool GetValue() const;
|
||||||
bool Enable( bool enable );
|
virtual bool Enable( bool enable );
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
|
|
||||||
|
virtual bool IsRadioButton() const { return TRUE; }
|
||||||
|
|
||||||
GSList *m_radioButtonGroup;
|
GSList *m_radioButtonGroup;
|
||||||
void ApplyWidgetStyle();
|
void ApplyWidgetStyle();
|
||||||
bool IsOwnGtkWindow( GdkWindow *window );
|
bool IsOwnGtkWindow( GdkWindow *window );
|
||||||
void OnInternalIdle();
|
void OnInternalIdle();
|
||||||
|
|
||||||
bool m_blockEvent;
|
bool m_blockEvent;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual wxSize DoGetBestSize() const;
|
virtual wxSize DoGetBestSize() const;
|
||||||
|
|
||||||
|
@@ -180,6 +180,9 @@ public:
|
|||||||
// is this window transparent for the mouse events (as wxStaticBox is)?
|
// is this window transparent for the mouse events (as wxStaticBox is)?
|
||||||
virtual bool IsTransparentForMouse() const { return FALSE; }
|
virtual bool IsTransparentForMouse() const { return FALSE; }
|
||||||
|
|
||||||
|
// is this a radiobutton (used by radiobutton code itself only)?
|
||||||
|
virtual bool IsRadioButton() const { return FALSE; }
|
||||||
|
|
||||||
// position and size of the window
|
// position and size of the window
|
||||||
int m_x, m_y;
|
int m_x, m_y;
|
||||||
int m_width, m_height;
|
int m_width, m_height;
|
||||||
@@ -214,7 +217,6 @@ public:
|
|||||||
bool m_hasVMT:1;
|
bool m_hasVMT:1;
|
||||||
bool m_sizeSet:1;
|
bool m_sizeSet:1;
|
||||||
bool m_resizing:1;
|
bool m_resizing:1;
|
||||||
bool m_isRadioButton:1; // faster than IS_KIND_OF
|
|
||||||
bool m_isFrame:1; // faster than IS_KIND_OF
|
bool m_isFrame:1; // faster than IS_KIND_OF
|
||||||
bool m_acceptsFocus:1; // true if not static
|
bool m_acceptsFocus:1; // true if not static
|
||||||
bool m_hasFocus:1; // true if == FindFocus()
|
bool m_hasFocus:1; // true if == FindFocus()
|
||||||
|
@@ -22,36 +22,44 @@
|
|||||||
class wxRadioButton: public wxControl
|
class wxRadioButton: public wxControl
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
inline wxRadioButton() {}
|
wxRadioButton() { }
|
||||||
inline wxRadioButton( wxWindow *parent, wxWindowID id,
|
wxRadioButton( wxWindow *parent,
|
||||||
const wxString& label,
|
wxWindowID id,
|
||||||
const wxPoint& pos = wxDefaultPosition,
|
const wxString& label,
|
||||||
const wxSize& size = wxDefaultSize, long style = 0,
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
const wxValidator& validator = wxDefaultValidator,
|
const wxSize& size = wxDefaultSize,
|
||||||
const wxString& name = wxRadioButtonNameStr )
|
long style = 0,
|
||||||
|
const wxValidator& validator = wxDefaultValidator,
|
||||||
|
const wxString& name = wxRadioButtonNameStr )
|
||||||
{
|
{
|
||||||
Create( parent, id, label, pos, size, style, validator, name );
|
Create( parent, id, label, pos, size, style, validator, name );
|
||||||
}
|
}
|
||||||
bool Create(wxWindow *parent, wxWindowID id,
|
|
||||||
const wxString& label,
|
bool Create( wxWindow *parent,
|
||||||
const wxPoint& pos = wxDefaultPosition,
|
wxWindowID id,
|
||||||
const wxSize& size = wxDefaultSize, long style = 0,
|
const wxString& label,
|
||||||
const wxValidator& validator = wxDefaultValidator,
|
const wxPoint& pos = wxDefaultPosition,
|
||||||
const wxString& name = wxRadioButtonNameStr );
|
const wxSize& size = wxDefaultSize,
|
||||||
|
long style = 0,
|
||||||
|
const wxValidator& validator = wxDefaultValidator,
|
||||||
|
const wxString& name = wxRadioButtonNameStr );
|
||||||
|
|
||||||
virtual void SetLabel(const wxString& label);
|
virtual void SetLabel(const wxString& label);
|
||||||
virtual void SetValue(bool val);
|
virtual void SetValue(bool val);
|
||||||
virtual bool GetValue() const;
|
virtual bool GetValue() const;
|
||||||
bool Enable( bool enable );
|
virtual bool Enable( bool enable );
|
||||||
|
|
||||||
// implementation
|
// implementation
|
||||||
|
|
||||||
|
virtual bool IsRadioButton() const { return TRUE; }
|
||||||
|
|
||||||
GSList *m_radioButtonGroup;
|
GSList *m_radioButtonGroup;
|
||||||
void ApplyWidgetStyle();
|
void ApplyWidgetStyle();
|
||||||
bool IsOwnGtkWindow( GdkWindow *window );
|
bool IsOwnGtkWindow( GdkWindow *window );
|
||||||
void OnInternalIdle();
|
void OnInternalIdle();
|
||||||
|
|
||||||
bool m_blockEvent;
|
bool m_blockEvent;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual wxSize DoGetBestSize() const;
|
virtual wxSize DoGetBestSize() const;
|
||||||
|
|
||||||
|
@@ -180,6 +180,9 @@ public:
|
|||||||
// is this window transparent for the mouse events (as wxStaticBox is)?
|
// is this window transparent for the mouse events (as wxStaticBox is)?
|
||||||
virtual bool IsTransparentForMouse() const { return FALSE; }
|
virtual bool IsTransparentForMouse() const { return FALSE; }
|
||||||
|
|
||||||
|
// is this a radiobutton (used by radiobutton code itself only)?
|
||||||
|
virtual bool IsRadioButton() const { return FALSE; }
|
||||||
|
|
||||||
// position and size of the window
|
// position and size of the window
|
||||||
int m_x, m_y;
|
int m_x, m_y;
|
||||||
int m_width, m_height;
|
int m_width, m_height;
|
||||||
@@ -214,7 +217,6 @@ public:
|
|||||||
bool m_hasVMT:1;
|
bool m_hasVMT:1;
|
||||||
bool m_sizeSet:1;
|
bool m_sizeSet:1;
|
||||||
bool m_resizing:1;
|
bool m_resizing:1;
|
||||||
bool m_isRadioButton:1; // faster than IS_KIND_OF
|
|
||||||
bool m_isFrame:1; // faster than IS_KIND_OF
|
bool m_isFrame:1; // faster than IS_KIND_OF
|
||||||
bool m_acceptsFocus:1; // true if not static
|
bool m_acceptsFocus:1; // true if not static
|
||||||
bool m_hasFocus:1; // true if == FindFocus()
|
bool m_hasFocus:1; // true if == FindFocus()
|
||||||
|
@@ -64,13 +64,17 @@ void gtk_radiobutton_clicked_callback( GtkToggleButton *button, wxRadioButton *r
|
|||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxRadioButton,wxControl)
|
IMPLEMENT_DYNAMIC_CLASS(wxRadioButton,wxControl)
|
||||||
|
|
||||||
bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& label,
|
bool wxRadioButton::Create( wxWindow *parent,
|
||||||
const wxPoint& pos, const wxSize& size, long style,
|
wxWindowID id,
|
||||||
const wxValidator& validator, const wxString& name )
|
const wxString& label,
|
||||||
|
const wxPoint& pos,
|
||||||
|
const wxSize& size,
|
||||||
|
long style,
|
||||||
|
const wxValidator& validator,
|
||||||
|
const wxString& name )
|
||||||
{
|
{
|
||||||
m_acceptsFocus = TRUE;
|
m_acceptsFocus = TRUE;
|
||||||
m_needParent = TRUE;
|
m_needParent = TRUE;
|
||||||
m_isRadioButton = TRUE;
|
|
||||||
|
|
||||||
m_blockEvent = FALSE;
|
m_blockEvent = FALSE;
|
||||||
|
|
||||||
@@ -94,10 +98,11 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab
|
|||||||
while (node)
|
while (node)
|
||||||
{
|
{
|
||||||
wxWindow *child = node->GetData();
|
wxWindow *child = node->GetData();
|
||||||
if (child->m_isRadioButton)
|
if (child->IsRadioButton())
|
||||||
{
|
{
|
||||||
chief = (wxRadioButton*) child;
|
chief = (wxRadioButton*) child;
|
||||||
if (child->HasFlag(wxRB_GROUP)) break;
|
if (child->HasFlag(wxRB_GROUP))
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
node = node->GetPrevious();
|
node = node->GetPrevious();
|
||||||
}
|
}
|
||||||
|
@@ -2263,7 +2263,6 @@ void wxWindowGTK::Init()
|
|||||||
|
|
||||||
m_insertCallback = (wxInsertChildFunction) NULL;
|
m_insertCallback = (wxInsertChildFunction) NULL;
|
||||||
|
|
||||||
m_isRadioButton = FALSE;
|
|
||||||
m_isFrame = FALSE;
|
m_isFrame = FALSE;
|
||||||
m_acceptsFocus = FALSE;
|
m_acceptsFocus = FALSE;
|
||||||
m_hasFocus = FALSE;
|
m_hasFocus = FALSE;
|
||||||
|
@@ -64,13 +64,17 @@ void gtk_radiobutton_clicked_callback( GtkToggleButton *button, wxRadioButton *r
|
|||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxRadioButton,wxControl)
|
IMPLEMENT_DYNAMIC_CLASS(wxRadioButton,wxControl)
|
||||||
|
|
||||||
bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& label,
|
bool wxRadioButton::Create( wxWindow *parent,
|
||||||
const wxPoint& pos, const wxSize& size, long style,
|
wxWindowID id,
|
||||||
const wxValidator& validator, const wxString& name )
|
const wxString& label,
|
||||||
|
const wxPoint& pos,
|
||||||
|
const wxSize& size,
|
||||||
|
long style,
|
||||||
|
const wxValidator& validator,
|
||||||
|
const wxString& name )
|
||||||
{
|
{
|
||||||
m_acceptsFocus = TRUE;
|
m_acceptsFocus = TRUE;
|
||||||
m_needParent = TRUE;
|
m_needParent = TRUE;
|
||||||
m_isRadioButton = TRUE;
|
|
||||||
|
|
||||||
m_blockEvent = FALSE;
|
m_blockEvent = FALSE;
|
||||||
|
|
||||||
@@ -94,10 +98,11 @@ bool wxRadioButton::Create( wxWindow *parent, wxWindowID id, const wxString& lab
|
|||||||
while (node)
|
while (node)
|
||||||
{
|
{
|
||||||
wxWindow *child = node->GetData();
|
wxWindow *child = node->GetData();
|
||||||
if (child->m_isRadioButton)
|
if (child->IsRadioButton())
|
||||||
{
|
{
|
||||||
chief = (wxRadioButton*) child;
|
chief = (wxRadioButton*) child;
|
||||||
if (child->HasFlag(wxRB_GROUP)) break;
|
if (child->HasFlag(wxRB_GROUP))
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
node = node->GetPrevious();
|
node = node->GetPrevious();
|
||||||
}
|
}
|
||||||
|
@@ -2263,7 +2263,6 @@ void wxWindowGTK::Init()
|
|||||||
|
|
||||||
m_insertCallback = (wxInsertChildFunction) NULL;
|
m_insertCallback = (wxInsertChildFunction) NULL;
|
||||||
|
|
||||||
m_isRadioButton = FALSE;
|
|
||||||
m_isFrame = FALSE;
|
m_isFrame = FALSE;
|
||||||
m_acceptsFocus = FALSE;
|
m_acceptsFocus = FALSE;
|
||||||
m_hasFocus = FALSE;
|
m_hasFocus = FALSE;
|
||||||
|
Reference in New Issue
Block a user