]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/caret.h
fix SetUserData() to delete the correct pointer
[wxWidgets.git] / include / wx / msw / caret.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: msw/caret.h
3 // Purpose: wxCaret class - the MSW implementation of wxCaret
4 // Author: Vadim Zeitlin
5 // Modified by:
6 // Created: 23.05.99
7 // RCS-ID: $Id$
8 // Copyright: (c) wxWidgets team
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_CARET_H_
13 #define _WX_CARET_H_
14
15 class WXDLLEXPORT wxCaret : public wxCaretBase
16 {
17 public:
18 wxCaret() { Init(); }
19 // create the caret of given (in pixels) width and height and associate
20 // with the given window
21 wxCaret(wxWindow *window, int width, int height)
22 {
23 Init();
24
25 (void)Create(window, width, height);
26 }
27 // same as above
28 wxCaret(wxWindowBase *window, const wxSize& size)
29 {
30 Init();
31
32 (void)Create(window, size);
33 }
34
35 // process wxWindow notifications
36 virtual void OnSetFocus();
37 virtual void OnKillFocus();
38
39 protected:
40 void Init()
41 {
42 wxCaretBase::Init();
43
44 m_hasCaret = false;
45 }
46
47 // override base class virtuals
48 virtual void DoMove();
49 virtual void DoShow();
50 virtual void DoHide();
51 virtual void DoSize();
52
53 // helper function which creates the system caret
54 bool MSWCreateCaret();
55
56 private:
57 bool m_hasCaret;
58
59 DECLARE_NO_COPY_CLASS(wxCaret)
60 };
61
62 #endif // _WX_CARET_H_
63
64