]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/commandlinkbutton.h
bc4d4804d091a9c53ab8d2e13f7dd3beae6bb315
[wxWidgets.git] / include / wx / msw / commandlinkbutton.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/commandlinkbutton.h
3 // Purpose: wxCommandLinkButton class
4 // Author: Rickard Westerlund
5 // Created: 2010-06-11
6 // Copyright: (c) 2010 wxWidgets team
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10 #ifndef _WX_MSW_COMMANDLINKBUTTON_H_
11 #define _WX_MSW_COMMANDLINKBUTTON_H_
12
13 // ----------------------------------------------------------------------------
14 // Command link button for wxMSW
15 // ----------------------------------------------------------------------------
16
17 // Derive from the generic version to be able to fall back to it during
18 // run-time if the command link buttons are not supported by the system we're
19 // running under.
20
21 class WXDLLIMPEXP_ADV wxCommandLinkButton : public wxGenericCommandLinkButton
22 {
23 public:
24 wxCommandLinkButton () : wxGenericCommandLinkButton() { }
25
26 wxCommandLinkButton(wxWindow *parent,
27 wxWindowID id,
28 const wxString& mainLabel = wxEmptyString,
29 const wxString& note = wxEmptyString,
30 const wxPoint& pos = wxDefaultPosition,
31 const wxSize& size = wxDefaultSize,
32 long style = 0,
33 const wxValidator& validator = wxDefaultValidator,
34 const wxString& name = wxButtonNameStr)
35 : wxGenericCommandLinkButton()
36 {
37 Create(parent, id, mainLabel, note, pos, size, style, validator, name);
38 }
39
40 bool Create(wxWindow *parent,
41 wxWindowID id,
42 const wxString& mainLabel = wxEmptyString,
43 const wxString& note = wxEmptyString,
44 const wxPoint& pos = wxDefaultPosition,
45 const wxSize& size = wxDefaultSize,
46 long style = 0,
47 const wxValidator& validator = wxDefaultValidator,
48 const wxString& name = wxButtonNameStr);
49
50 // overridden base class methods
51 // -----------------------------
52
53 // do the same thing as in the generic case here
54 virtual void SetLabel(const wxString& label)
55 {
56 SetMainLabelAndNote(label.BeforeFirst('\n'), label.AfterFirst('\n'));
57 }
58
59 virtual void SetMainLabelAndNote(const wxString& mainLabel,
60 const wxString& note);
61
62 virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const;
63
64 protected:
65 virtual wxSize DoGetBestSize() const;
66
67 virtual bool HasNativeBitmap() const;
68
69 private:
70 wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxCommandLinkButton);
71 };
72
73 #endif // _WX_MSW_COMMANDLINKBUTTON_H_