#ifndef _WX_UNIV_BUTTON_H_
#define _WX_UNIV_BUTTON_H_
-class WXDLLEXPORT wxInputHandler;
+class WXDLLIMPEXP_FWD_CORE wxInputHandler;
#include "wx/bitmap.h"
Create(parent, id, bitmap, label, pos, size, style, validator, name);
}
-
+
wxButton(wxWindow *parent,
wxWindowID id,
const wxString& label = wxEmptyString,
return Create(parent, id, wxNullBitmap, label,
pos, size, style, validator, name);
}
-
+
bool Create(wxWindow *parent,
wxWindowID id,
const wxBitmap& bitmap,
virtual void SetImageLabel(const wxBitmap& bitmap);
virtual void SetImageMargins(wxCoord x, wxCoord y);
- virtual void SetDefault();
+ virtual wxWindow *SetDefault();
virtual bool IsPressed() const { return m_isPressed; }
virtual bool IsDefault() const { return m_isDefault; }
// wxButton actions
- void Toggle();
+ virtual void Toggle();
virtual void Press();
virtual void Release();
virtual void Click();
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 bool DoDrawBackground(wxDC& dc);
virtual void DoDraw(wxControlRenderer *renderer);
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_