aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/editor/scripteditor.cpp
diff options
context:
space:
mode:
authorGravatar Noldor2010-08-09 07:37:41 +0000
committerGravatar Noldor2010-08-09 07:37:41 +0000
commit8c2422ba6d534bb8abcdb6b89857b23e3da0512d (patch)
tree4d21fb2f3f89a72b0a4bd8e058dd0b0c454871ec /src/modules/editor/scripteditor.cpp
parentupdated italian translation (diff)
downloadKVIrc-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.cpp33
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);