From fb46c31934c44ee1f83075b5f3647df4eec588c7 Mon Sep 17 00:00:00 2001 From: Leandro Melo <leandro.melo@nokia.com> Date: Wed, 10 Nov 2010 15:09:18 +0100 Subject: [PATCH] Plain text editor: Make sure user setting about folding markers is used It was being reset based on the highlighter definitions. Consider some refactoring with the related options as well to avoid overriding user's settings. Done-with: Thorbjorn Lindeijer --- src/plugins/cppeditor/cppeditor.cpp | 1 - src/plugins/qmljseditor/qmljseditor.cpp | 1 - src/plugins/texteditor/basetexteditor.cpp | 12 ++++++++---- src/plugins/texteditor/basetexteditor.h | 2 +- src/plugins/texteditor/plaintexteditor.cpp | 2 -- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp index 66bb2b7986d..10a3600b483 100644 --- a/src/plugins/cppeditor/cppeditor.cpp +++ b/src/plugins/cppeditor/cppeditor.cpp @@ -410,7 +410,6 @@ CPPEditor::CPPEditor(QWidget *parent) setParenthesesMatchingEnabled(true); setMarksVisible(true); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); baseTextDocument()->setSyntaxHighlighter(new CppHighlighter); m_modelManager = CppTools::CppModelManagerInterface::instance(); diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp index abbb818a117..fccae1942d6 100644 --- a/src/plugins/qmljseditor/qmljseditor.cpp +++ b/src/plugins/qmljseditor/qmljseditor.cpp @@ -689,7 +689,6 @@ QmlJSTextEditor::QmlJSTextEditor(QWidget *parent) : setParenthesesMatchingEnabled(true); setMarksVisible(true); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); m_updateDocumentTimer = new QTimer(this); m_updateDocumentTimer->setInterval(UPDATE_DOCUMENT_DEFAULT_INTERVAL); diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp index eaa36330c72..deac6a18311 100644 --- a/src/plugins/texteditor/basetexteditor.cpp +++ b/src/plugins/texteditor/basetexteditor.cpp @@ -1807,10 +1807,13 @@ bool BaseTextEditor::lineSeparatorsAllowed() const return d->m_lineSeparatorsAllowed; } -void BaseTextEditor::setCodeFoldingVisible(bool b) +void BaseTextEditor::updateCodeFoldingVisible() { - d->m_codeFoldingVisible = b && d->m_codeFoldingSupported; - slotUpdateExtraAreaWidth(); + const bool visible = d->m_codeFoldingSupported && d->m_displaySettings.m_displayFoldingMarkers; + if (d->m_codeFoldingVisible != visible) { + d->m_codeFoldingVisible = visible; + slotUpdateExtraAreaWidth(); + } } bool BaseTextEditor::codeFoldingVisible() const @@ -1827,6 +1830,7 @@ bool BaseTextEditor::codeFoldingVisible() const void BaseTextEditor::setCodeFoldingSupported(bool b) { d->m_codeFoldingSupported = b; + updateCodeFoldingVisible(); } bool BaseTextEditor::codeFoldingSupported() const @@ -5124,7 +5128,6 @@ void BaseTextEditor::setDisplaySettings(const DisplaySettings &ds) setLineWrapMode(ds.m_textWrapping ? QPlainTextEdit::WidgetWidth : QPlainTextEdit::NoWrap); setLineNumbersVisible(ds.m_displayLineNumbers); setVisibleWrapColumn(ds.m_showWrapColumn ? ds.m_wrapColumn : 0); - setCodeFoldingVisible(ds.m_displayFoldingMarkers); setHighlightCurrentLine(ds.m_highlightCurrentLine); setRevisionsVisible(ds.m_markTextChanges); setCenterOnScroll(ds.m_centerCursorOnScroll); @@ -5147,6 +5150,7 @@ void BaseTextEditor::setDisplaySettings(const DisplaySettings &ds) d->m_highlightBlocksInfo = BaseTextEditorPrivateHighlightBlocks(); } + updateCodeFoldingVisible(); updateHighlights(); viewport()->update(); extraArea()->update(); diff --git a/src/plugins/texteditor/basetexteditor.h b/src/plugins/texteditor/basetexteditor.h index aa19330753a..d17b6993233 100644 --- a/src/plugins/texteditor/basetexteditor.h +++ b/src/plugins/texteditor/basetexteditor.h @@ -207,7 +207,7 @@ public: void setLineSeparatorsAllowed(bool b); bool lineSeparatorsAllowed() const; - void setCodeFoldingVisible(bool b); + void updateCodeFoldingVisible(); bool codeFoldingVisible() const; void setCodeFoldingSupported(bool b); diff --git a/src/plugins/texteditor/plaintexteditor.cpp b/src/plugins/texteditor/plaintexteditor.cpp index ea1a0b0a2c2..e3cb3fff56c 100644 --- a/src/plugins/texteditor/plaintexteditor.cpp +++ b/src/plugins/texteditor/plaintexteditor.cpp @@ -164,7 +164,6 @@ void PlainTextEditor::configure(const Core::MimeType &mimeType) baseTextDocument()->setSyntaxHighlighter(highlighter); setCodeFoldingSupported(false); - setCodeFoldingVisible(false); if (!mimeType.isNull()) { m_isMissingSyntaxDefinition = true; @@ -189,7 +188,6 @@ void PlainTextEditor::configure(const Core::MimeType &mimeType) m_commentDefinition.setMultiLineEnd(definition->multiLineCommentEnd()); setCodeFoldingSupported(true); - setCodeFoldingVisible(true); } } else if (file()) { const QString &fileName = file()->fileName(); -- GitLab