]> git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/caret.h
Committed Mike's Update Patch
[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) wxWindows team
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_CARET_H_
13 #define _WX_CARET_H_
14
15 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
16 #pragma interface "caret.h"
17 #endif
18
19 class WXDLLEXPORT wxCaret : public wxCaretBase
20 {
21 public:
22 wxCaret() { Init(); }
23 // create the caret of given (in pixels) width and height and associate
24 // with the given window
25 wxCaret(wxWindow *window, int width, int height)
26 {
27 Init();
28
29 (void)Create(window, width, height);
30 }
31 // same as above
32 wxCaret(wxWindowBase *window, const wxSize& size)
33 {
34 Init();
35
36 (void)Create(window, size);
37 }
38
39 // process wxWindow notifications
40 virtual void OnSetFocus();
41 virtual void OnKillFocus();
42
43 protected:
44 void Init()
45 {
46 wxCaretBase::Init();
47
48 m_hasCaret = FALSE;
49 }
50
51 // override base class virtuals
52 virtual void DoMove();
53 virtual void DoShow();
54 virtual void DoHide();
55 virtual void DoSize();
56
57 // helper function which creates the system caret
58 bool MSWCreateCaret();
59
60 private:
61 bool m_hasCaret;
62
63 DECLARE_NO_COPY_CLASS(wxCaret)
64 };
65
66 #endif // _WX_CARET_H_
67
68