From 12f5219fac9b1010a24ecb31df71c4b9703eb752 Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Thu, 23 Feb 2012 17:01:30 +0000 Subject: [PATCH] Added functionality for disabling the vertical scrollbar. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/richtext/richtextctrl.h | 13 +++++++++++++ interface/wx/richtext/richtextctrl.h | 10 ++++++++++ src/richtext/richtextctrl.cpp | 9 ++++++++- 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/include/wx/richtext/richtextctrl.h b/include/wx/richtext/richtextctrl.h index 68a7453d0f..fa3779e269 100644 --- a/include/wx/richtext/richtextctrl.h +++ b/include/wx/richtext/richtextctrl.h @@ -1676,6 +1676,16 @@ public: */ virtual bool CanInsertContent(wxRichTextParagraphLayoutBox& container, long pos) const; + /** + Enable or disable the vertical scrollbar. + */ + virtual void EnableVerticalScrollbar(bool enable); + + /** + Returns @true if the vertical scrollbar is enabled. + */ + virtual bool GetVerticalScrollbarEnabled() const { return m_verticalScrollbarEnabled; } + // Command handlers /** @@ -2159,6 +2169,9 @@ protected: /// Are we editable? bool m_editable; + /// Is the vertical scrollbar enabled? + bool m_verticalScrollbarEnabled; + /// Are we showing the caret position at the start of a line /// instead of at the end of the previous one? bool m_caretAtLineStart; diff --git a/interface/wx/richtext/richtextctrl.h b/interface/wx/richtext/richtextctrl.h index c6ad67f802..b341941c60 100644 --- a/interface/wx/richtext/richtextctrl.h +++ b/interface/wx/richtext/richtextctrl.h @@ -1635,6 +1635,16 @@ public: */ virtual bool CanInsertContent(wxRichTextParagraphLayoutBox& container, long pos) const; + /** + Enable or disable the vertical scrollbar. + */ + virtual void EnableVerticalScrollbar(bool enable); + + /** + Returns @true if the vertical scrollbar is enabled. + */ + virtual bool GetVerticalScrollbarEnabled() const; + // Command handlers /** diff --git a/src/richtext/richtextctrl.cpp b/src/richtext/richtextctrl.cpp index f7dfab511d..cb0d915f8b 100644 --- a/src/richtext/richtextctrl.cpp +++ b/src/richtext/richtextctrl.cpp @@ -356,6 +356,7 @@ void wxRichTextCtrl::Init() m_selectionAnchorObject = NULL; m_selectionState = wxRichTextCtrlSelectionState_Normal; m_editable = true; + m_verticalScrollbarEnabled = true; m_caretAtLineStart = false; m_dragging = false; #if wxUSE_DRAG_AND_DROP @@ -2555,7 +2556,7 @@ void wxRichTextCtrl::SetupScrollbars(bool atTop) if (IsFrozen()) return; - if (GetBuffer().IsEmpty()) + if (GetBuffer().IsEmpty() || !m_verticalScrollbarEnabled) { SetScrollbars(0, 0, 0, 0, 0, 0); return; @@ -4560,6 +4561,12 @@ bool wxRichTextCtrl::CanInsertContent(wxRichTextParagraphLayoutBox& WXUNUSED(con return true; } +void wxRichTextCtrl::EnableVerticalScrollbar(bool enable) +{ + m_verticalScrollbarEnabled = enable; + SetupScrollbars(); +} + #if wxRICHTEXT_USE_OWN_CARET -- 2.47.2