X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/68379eaf0ae64d105f8244b1db83e793f7dd83b0..da8b1d4b3b535aba94d04494f5b6e2b3e47901ee:/include/wx/caret.h?ds=inline diff --git a/include/wx/caret.h b/include/wx/caret.h index 16caa514d8..c0a30bb893 100644 --- a/include/wx/caret.h +++ b/include/wx/caret.h @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: caret.h +// Name: wx/caret.h // Purpose: wxCaretBase class - the interface of wxCaret // Author: Vadim Zeitlin // Modified by: @@ -16,16 +16,12 @@ #if wxUSE_CARET -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "caret.h" -#endif - // --------------------------------------------------------------------------- // forward declarations // --------------------------------------------------------------------------- -class WXDLLEXPORT wxWindow; -class WXDLLEXPORT wxWindowBase; +class WXDLLIMPEXP_FWD_CORE wxWindow; +class WXDLLIMPEXP_FWD_CORE wxWindowBase; // ---------------------------------------------------------------------------- // headers we have to include @@ -38,7 +34,7 @@ class WXDLLEXPORT wxWindowBase; // appear. It can be either a solid block or a custom bitmap (TODO) // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxCaretBase +class WXDLLIMPEXP_CORE wxCaretBase { public: // ctors @@ -61,6 +57,9 @@ public: (void)Create(window, size); } + // a virtual dtor has been provided since this class has virtual members + virtual ~wxCaretBase() { } + // Create() functions - same as ctor but returns the success code // -------------------------------------------------------------- @@ -168,7 +167,7 @@ protected: // the common initialization void Init() { - m_window = (wxWindowBase *)NULL; + m_window = NULL; m_x = m_y = 0; m_width = m_height = 0; m_countVisible = 0; @@ -187,7 +186,7 @@ protected: int m_countVisible; private: - DECLARE_NO_COPY_CLASS(wxCaretBase) + wxDECLARE_NO_COPY_CLASS(wxCaretBase); }; // --------------------------------------------------------------------------- @@ -206,7 +205,20 @@ private: // avoid overdrawing the caret // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxCaretSuspend +#ifdef wxHAS_CARET_USING_OVERLAYS + +// we don't need to hide the caret if it's rendered using overlays +class WXDLLIMPEXP_CORE wxCaretSuspend +{ +public: + wxCaretSuspend(wxWindow *WXUNUSED(win)) {} + + wxDECLARE_NO_COPY_CLASS(wxCaretSuspend); +}; + +#else // !wxHAS_CARET_USING_OVERLAYS + +class WXDLLIMPEXP_CORE wxCaretSuspend { public: wxCaretSuspend(wxWindow *win) @@ -230,10 +242,11 @@ private: wxCaret *m_caret; bool m_show; - DECLARE_NO_COPY_CLASS(wxCaretSuspend) + wxDECLARE_NO_COPY_CLASS(wxCaretSuspend); }; +#endif // wxHAS_CARET_USING_OVERLAYS/!wxHAS_CARET_USING_OVERLAYS + #endif // wxUSE_CARET #endif // _WX_CARET_H_BASE_ -