X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23645bfa01b6450257f140a30c87565225b1ef4a..fb63a24232a48e4b634124c7eaa968974c3c24a1:/include/wx/univ/button.h diff --git a/include/wx/univ/button.h b/include/wx/univ/button.h index 6d4b24ced0..b9ce26f632 100644 --- a/include/wx/univ/button.h +++ b/include/wx/univ/button.h @@ -6,16 +6,12 @@ // Created: 15.08.00 // RCS-ID: $Id$ // Copyright: (c) 2000 SciTech Software, Inc. (www.scitechsoft.com) -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_UNIV_BUTTON_H_ #define _WX_UNIV_BUTTON_H_ -#ifdef __GNUG__ - #pragma interface "univbutton.h" -#endif - class WXDLLEXPORT wxInputHandler; #include "wx/bitmap.h" @@ -40,7 +36,7 @@ public: wxButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, - const wxString& label, + const wxString& label = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, @@ -54,7 +50,7 @@ public: wxButton(wxWindow *parent, wxWindowID id, - const wxString& label, + const wxString& label = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, @@ -68,7 +64,7 @@ public: bool Create(wxWindow *parent, wxWindowID id, - const wxString& label, + const wxString& label = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, @@ -82,7 +78,7 @@ public: bool Create(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, - const wxString& label, + const wxString& label = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, @@ -99,19 +95,29 @@ public: virtual bool IsDefault() const { return m_isDefault; } // wxButton actions - void Toggle(); + virtual void Toggle(); virtual void Press(); virtual void Release(); virtual void Click(); -protected: virtual bool PerformAction(const wxControlAction& action, long numArg = -1, const wxString& strArg = wxEmptyString); + + virtual bool CanBeHighlighted() const { return true; } + + static wxInputHandler *GetStdInputHandler(wxInputHandler *handlerDef); + virtual wxInputHandler *DoGetStdInputHandler(wxInputHandler *handlerDef) + { + return GetStdInputHandler(handlerDef); + } + + +protected: virtual wxSize DoGetBestClientSize() const; - virtual void DoDraw(wxControlRenderer *renderer); - virtual bool CanBeHighlighted() const { return TRUE; } + virtual bool DoDrawBackground(wxDC& dc); + virtual void DoDraw(wxControlRenderer *renderer); // common part of all ctors void Init(); @@ -129,31 +135,5 @@ private: DECLARE_DYNAMIC_CLASS(wxButton) }; -// ---------------------------------------------------------------------------- -// wxStdButtonInputHandler: translates SPACE and ENTER keys and the left mouse -// click into button press/release actions -// ---------------------------------------------------------------------------- - -class WXDLLEXPORT wxStdButtonInputHandler : public wxStdInputHandler -{ -public: - wxStdButtonInputHandler(wxInputHandler *inphand); - - virtual bool HandleKey(wxInputConsumer *consumer, - const wxKeyEvent& event, - bool pressed); - virtual bool HandleMouse(wxInputConsumer *consumer, - const wxMouseEvent& event); - virtual bool HandleMouseMove(wxInputConsumer *consumer, const wxMouseEvent& event); - virtual bool HandleFocus(wxInputConsumer *consumer, const wxFocusEvent& event); - virtual bool HandleActivation(wxInputConsumer *consumer, bool activated); - -private: - // the window (button) which has capture or NULL and the flag telling if - // the mouse is inside the button which captured it or not - wxWindow *m_winCapture; - bool m_winHasMouse; -}; - #endif // _WX_UNIV_BUTTON_H_