X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f4b8bf2fd1fab57c46063f5955fe24ba3ed2c23e..ec8bd3921c6ad85dd8101306d920e19e32541680:/include/wx/caret.h diff --git a/include/wx/caret.h b/include/wx/caret.h index 07e06afeea..16caa514d8 100644 --- a/include/wx/caret.h +++ b/include/wx/caret.h @@ -5,14 +5,18 @@ // Modified by: // Created: 23.05.99 // RCS-ID: $Id$ -// Copyright: (c) wxWindows team +// Copyright: (c) wxWidgets team // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_CARET_H_BASE_ #define _WX_CARET_H_BASE_ -#ifdef __GNUG__ +#include "wx/defs.h" + +#if wxUSE_CARET + +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "caret.h" #endif @@ -114,7 +118,7 @@ public: // show/hide the caret (should be called by wxWindow when needed): // Show() must be called as many times as Hide() + 1 to make the caret // visible - virtual void Show(bool show = TRUE) + virtual void Show(bool show = true) { if ( show ) { @@ -127,7 +131,7 @@ public: DoHide(); } } - virtual void Hide() { Show(FALSE); } + virtual void Hide() { Show(false); } // blink time is measured in milliseconds and is the time elapsed // between 2 inversions of the caret (blink time of the caret is common @@ -152,7 +156,7 @@ protected: m_width = width; m_height = height; - return TRUE; + return true; } // pure virtuals to implement in the derived class @@ -183,7 +187,7 @@ protected: int m_countVisible; private: - DECLARE_NO_COPY_CLASS(wxCaretBase); + DECLARE_NO_COPY_CLASS(wxCaretBase) }; // --------------------------------------------------------------------------- @@ -208,19 +212,28 @@ public: wxCaretSuspend(wxWindow *win) { m_caret = win->GetCaret(); - if ( m_caret ) + m_show = false; + if ( m_caret && m_caret->IsVisible() ) + { m_caret->Hide(); + m_show = true; + } } ~wxCaretSuspend() { - if ( m_caret ) + if ( m_caret && m_show ) m_caret->Show(); } private: wxCaret *m_caret; + bool m_show; + + DECLARE_NO_COPY_CLASS(wxCaretSuspend) }; +#endif // wxUSE_CARET + #endif // _WX_CARET_H_BASE_