]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/motif/button.h
* Implemented BestSize cache
[wxWidgets.git] / include / wx / motif / button.h
index ee31d5c7f1170fe44f4ca3d248e45b675bd69d56..32958d5753144ef9ac5382baa3ffde590492918c 100644 (file)
@@ -6,45 +6,51 @@
 // Created:     17/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart
 // Created:     17/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_BUTTON_H_
 #define _WX_BUTTON_H_
 
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_BUTTON_H_
 #define _WX_BUTTON_H_
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma interface "button.h"
 #endif
 
 #pragma interface "button.h"
 #endif
 
-#include "wx/control.h"
-#include "wx/gdicmn.h"
-
-WXDLLEXPORT_DATA(extern const char*) wxButtonNameStr;
-
 // Pushbutton
 // Pushbutton
-class WXDLLEXPORT wxButton: public wxControl
+class WXDLLEXPORT wxButton: public wxButtonBase
 {
 {
-  DECLARE_DYNAMIC_CLASS(wxButton)
- public:
-  inline wxButton() {}
-  inline wxButton(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 = wxButtonNameStr)
-  {
-      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 = wxButtonNameStr);
-
-  virtual void SetDefault();
-  virtual void Command(wxCommandEvent& event);
+    DECLARE_DYNAMIC_CLASS(wxButton)
+        
+public:
+    wxButton() { }
+    wxButton(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 = wxButtonNameStr)
+    {
+        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 = wxButtonNameStr);
+    
+    virtual void SetDefault();
+    virtual void Command(wxCommandEvent& event);
+    
+    static wxSize GetDefaultSize();
+    
+    // Implementation
+private:
+    virtual wxSize DoGetBestSize() const;
+    wxSize OldGetBestSize() const;
+    void SetDefaultShadowThicknessAndResize();
 };
 
 #endif
 };
 
 #endif
-    // _WX_BUTTON_H_
+// _WX_BUTTON_H_