X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83df96d63a52ebb08b9e32549dc255354b4a18d0..0555b2a0a3c509687e7fc5aeb160f5171b7e6311:/include/wx/motif/radiobut.h diff --git a/include/wx/motif/radiobut.h b/include/wx/motif/radiobut.h index 514a731c90..71b5b72b5a 100644 --- a/include/wx/motif/radiobut.h +++ b/include/wx/motif/radiobut.h @@ -1,31 +1,24 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: radiobut.h +// Name: wx/motif/radiobut.h // Purpose: wxRadioButton class // Author: Julian Smart // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_RADIOBUT_H_ #define _WX_RADIOBUT_H_ -#ifdef __GNUG__ -#pragma interface "radiobut.h" -#endif - -#include "wx/control.h" - -WXDLLEXPORT_DATA(extern const char*) wxRadioButtonNameStr; - -class WXDLLEXPORT wxRadioButton: public wxControl +class WXDLLIMPEXP_CORE wxRadioButton: public wxControl { DECLARE_DYNAMIC_CLASS(wxRadioButton) -protected: public: wxRadioButton(); + virtual ~wxRadioButton() { RemoveFromCycle(); } + inline wxRadioButton(wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos = wxDefaultPosition, @@ -35,60 +28,35 @@ public: { Create(parent, id, label, pos, size, style, validator, name); } - + bool Create(wxWindow *parent, wxWindowID id, const wxString& label, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxRadioButtonNameStr); - + virtual void SetValue(bool val); virtual bool GetValue() const ; - + void Command(wxCommandEvent& event); - + // Implementation - virtual void ChangeFont(bool keepOriginalSize = TRUE); virtual void ChangeBackgroundColour(); - virtual void ChangeForegroundColour(); -}; -// Not implemented -#if 0 -class WXDLLEXPORT wxBitmap ; - -WXDLLEXPORT_DATA(extern const char*) wxBitmapRadioButtonNameStr; - -class WXDLLEXPORT wxBitmapRadioButton: public wxRadioButton -{ - DECLARE_DYNAMIC_CLASS(wxBitmapRadioButton) + // *this function is an implementation detail* + // clears the selection in the radiobuttons in the cycle + // and returns the old selection (if any) + wxRadioButton* ClearSelections(); protected: - wxBitmap *theButtonBitmap; -public: - inline wxBitmapRadioButton() { theButtonBitmap = NULL; } - inline wxBitmapRadioButton(wxWindow *parent, wxWindowID id, - const wxBitmap *label, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxBitmapRadioButtonNameStr) - { - Create(parent, id, label, pos, size, style, validator, name); - } - - bool Create(wxWindow *parent, wxWindowID id, - const wxBitmap *label, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxBitmapRadioButtonNameStr); - - virtual void SetLabel(const wxBitmap *label); - virtual void SetValue(bool val) ; - virtual bool GetValue() const ; + virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; } +private: + wxRadioButton* AddInCycle(wxRadioButton* cycle); + void RemoveFromCycle(); + wxRadioButton* NextInCycle() { return m_cycle; } + + wxRadioButton *m_cycle; }; -#endif #endif // _WX_RADIOBUT_H_