]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/radiobut.h
routing native events first to the wx class and only if skipped call native handler
[wxWidgets.git] / include / wx / gtk1 / radiobut.h
index 16aa5fa3285b8a27171b50453753551de502c542..28cc8343857b44e0ea5b7e4425fcd561f4d399a7 100644 (file)
@@ -1,76 +1,67 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        radiobut.h
+// Name:        wx/gtk1/radiobut.h
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /////////////////////////////////////////////////////////////////////////////
 
-
 #ifndef __GTKRADIOBUTTONH__
 #define __GTKRADIOBUTTONH__
 
 #ifndef __GTKRADIOBUTTONH__
 #define __GTKRADIOBUTTONH__
 
-#ifdef __GNUG__
-#pragma interface
-#endif
+//-----------------------------------------------------------------------------
+// wxRadioButton
+//-----------------------------------------------------------------------------
 
 
-#include "wx/defs.h"
+class WXDLLIMPEXP_CORE wxRadioButton: public wxControl
+{
+public:
+    wxRadioButton() { }
+    wxRadioButton( 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 )
+    {
+        Create( parent, id, label, pos, size, style, validator, name );
+    }
 
 
-#if wxUSE_RADIOBOX
+    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 );
 
 
-#include "wx/object.h"
-#include "wx/list.h"
-#include "wx/control.h"
+    virtual void SetLabel(const wxString& label);
+    virtual void SetValue(bool val);
+    virtual bool GetValue() const;
+    virtual bool Enable( bool enable = TRUE );
 
 
-//-----------------------------------------------------------------------------
-// classes
-//-----------------------------------------------------------------------------
+    static wxVisualAttributes
+    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
 
 
-class wxRadioButton;
+    // implementation
 
 
-//-----------------------------------------------------------------------------
-// data
-//-----------------------------------------------------------------------------
+    virtual bool IsRadioButton() const { return TRUE; }
 
 
-extern const char* wxRadioButtonNameStr;
+    void DoApplyWidgetStyle(GtkRcStyle *style);
+    bool IsOwnGtkWindow( GdkWindow *window );
+    void OnInternalIdle();
 
 
-//-----------------------------------------------------------------------------
-// wxRadioButton
-//-----------------------------------------------------------------------------
+    bool m_blockEvent;
 
 
-class wxRadioButton: public wxControl
-{
-DECLARE_DYNAMIC_CLASS(wxRadioButton)
-  
-public:
-  inline wxRadioButton() {}
-  inline wxRadioButton( 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 )
-  {
-      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 SetLabel(const wxString& label);
-  virtual void SetValue(bool val);
-  virtual bool GetValue() const;
-  bool Enable( bool enable );
-    
-  // implementation
-    
-  GSList *m_radioButtonGroup;
-  void ApplyWidgetStyle();
-};
+protected:
+    virtual wxSize DoGetBestSize() const;
 
 
-#endif
+private:
+    DECLARE_DYNAMIC_CLASS(wxRadioButton)
+};
 
 #endif // __GTKRADIOBUTTONH__
 
 #endif // __GTKRADIOBUTTONH__