1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/button.h
3 // Purpose: wxButton class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_MSW_BUTTON_H_
13 #define _WX_MSW_BUTTON_H_
15 // ----------------------------------------------------------------------------
17 // ----------------------------------------------------------------------------
19 class WXDLLIMPEXP_CORE wxButton
: public wxButtonBase
22 wxButton() { Init(); }
23 wxButton(wxWindow
*parent
,
25 const wxString
& label
= wxEmptyString
,
26 const wxPoint
& pos
= wxDefaultPosition
,
27 const wxSize
& size
= wxDefaultSize
,
29 const wxValidator
& validator
= wxDefaultValidator
,
30 const wxString
& name
= wxButtonNameStr
)
34 Create(parent
, id
, label
, pos
, size
, style
, validator
, name
);
37 bool Create(wxWindow
*parent
,
39 const wxString
& label
= wxEmptyString
,
40 const wxPoint
& pos
= wxDefaultPosition
,
41 const wxSize
& size
= wxDefaultSize
,
43 const wxValidator
& validator
= wxDefaultValidator
,
44 const wxString
& name
= wxButtonNameStr
);
48 virtual wxWindow
*SetDefault();
50 // implementation from now on
51 virtual void Command(wxCommandEvent
& event
);
52 virtual WXLRESULT
MSWWindowProc(WXUINT nMsg
, WXWPARAM wParam
, WXLPARAM lParam
);
53 virtual bool MSWCommand(WXUINT param
, WXWORD id
);
55 virtual WXDWORD
MSWGetStyle(long style
, WXDWORD
*exstyle
) const;
58 // send a notification event, return true if processed
59 bool SendClickEvent();
61 // default button handling
63 void UnsetTmpDefault();
65 // set or unset BS_DEFPUSHBUTTON style
66 static void SetDefaultStyle(wxButton
*btn
, bool on
);
68 virtual bool DoGetAuthNeeded() const;
69 virtual void DoSetAuthNeeded(bool show
);
71 // true if the UAC symbol is shown
80 void OnCharHook(wxKeyEvent
& event
);
82 wxDECLARE_EVENT_TABLE();
83 wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxButton
);
86 #endif // _WX_MSW_BUTTON_H_