diff options
| author | 2010-08-09 07:37:41 +0000 | |
|---|---|---|
| committer | 2010-08-09 07:37:41 +0000 | |
| commit | 8c2422ba6d534bb8abcdb6b89857b23e3da0512d (patch) | |
| tree | 4d21fb2f3f89a72b0a4bd8e058dd0b0c454871ec /src/modules/editor/scripteditor.cpp | |
| parent | updated italian translation (diff) | |
| download | KVIrc-8c2422ba6d534bb8abcdb6b89857b23e3da0512d.tar.gz KVIrc-8c2422ba6d534bb8abcdb6b89857b23e3da0512d.tar.bz2 KVIrc-8c2422ba6d534bb8abcdb6b89857b23e3da0512d.zip | |
Implementation feature #882 (work in progress)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4814 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/editor/scripteditor.cpp')
| -rw-r--r-- | src/modules/editor/scripteditor.cpp | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/src/modules/editor/scripteditor.cpp b/src/modules/editor/scripteditor.cpp index 7753af41c..de782add6 100644 --- a/src/modules/editor/scripteditor.cpp +++ b/src/modules/editor/scripteditor.cpp @@ -119,6 +119,7 @@ KviScriptEditorWidget::~KviScriptEditorWidget() { if(m_pCompleter) delete m_pCompleter; + disableSyntaxHighlighter(); } void KviScriptEditorWidget::checkReadyCompleter() @@ -272,6 +273,18 @@ void KviScriptEditorWidget::slotHelp() { contextSensitiveHelp(); } +void KviScriptEditorWidget::enableSyntaxHighlighter() +{ + // we currently delete and re-create the m_pSyntaxHighlighter + // as a trick to ensure proper re-highlightning to occur + if (!m_pSyntaxHighlighter) + m_pSyntaxHighlighter = new KviScriptEditorSyntaxHighlighter(this); +} +void KviScriptEditorWidget::disableSyntaxHighlighter() +{ + if (m_pSyntaxHighlighter) delete m_pSyntaxHighlighter; + m_pSyntaxHighlighter = 0; +} void KviScriptEditorWidget::updateOptions() { @@ -281,10 +294,8 @@ void KviScriptEditorWidget::updateOptions() setPalette(p); setFont(g_fntNormal); setTextColor(g_clrNormalText); - // we currently delete and re-create the m_pSyntaxHighlighter - // as a trick to ensure proper re-highlightning to occur - if (m_pSyntaxHighlighter) delete m_pSyntaxHighlighter; - m_pSyntaxHighlighter = new KviScriptEditorSyntaxHighlighter(this); + disableSyntaxHighlighter(); + enableSyntaxHighlighter(); p = ((KviScriptEditorImplementation*)m_pParent)->findLineEdit()->palette(); p.setColor(foregroundRole(),g_clrFind); @@ -889,14 +900,21 @@ void KviScriptEditorImplementation::setText(const char * txt) { setText(QByteArray(txt)); } - +void KviScriptEditorImplementation::setUnHighlightedText(const QString & szText) +{ + m_pEditor->disableSyntaxHighlighter(); + m_pEditor->setText(szText); +} void KviScriptEditorImplementation::setText(const QByteArray & szText) { - m_pEditor->setPlainText(szText.data()); + m_pEditor->setPlainText(szText.data()); m_pEditor->document()->setModified(false); updateRowColLabel(); } - +void KviScriptEditorImplementation::setReadOnly(bool bReadOnly) +{ + m_pEditor->setReadOnly(bReadOnly); +} void KviScriptEditorImplementation::getText(QByteArray & szText) { szText = m_pEditor->toPlainText().toUtf8(); @@ -904,6 +922,7 @@ void KviScriptEditorImplementation::getText(QByteArray & szText) void KviScriptEditorImplementation::setText(const QString & szText) { + m_pEditor->enableSyntaxHighlighter(); m_pEditor->setPlainText(szText); QTextCursor cur=m_pEditor->textCursor(); cur.movePosition(QTextCursor::End); |
