diff options
| author | 2008-09-30 17:35:57 +0000 | |
|---|---|---|
| committer | 2008-09-30 17:35:57 +0000 | |
| commit | 6a47f554eb18ddb137d5fd317663ec84091e5619 (patch) | |
| tree | fe370484efa54de0b81117ae3cd20c6f37d259f3 /src/modules/editor/scripteditor.h | |
| parent | fixed typo, thx to Caladiel (diff) | |
| download | KVIrc-6a47f554eb18ddb137d5fd317663ec84091e5619.tar.gz KVIrc-6a47f554eb18ddb137d5fd317663ec84091e5619.tar.bz2 KVIrc-6a47f554eb18ddb137d5fd317663ec84091e5619.zip | |
some fix in editor and aliaseditor modules
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@2608 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/editor/scripteditor.h')
| -rw-r--r-- | src/modules/editor/scripteditor.h | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/src/modules/editor/scripteditor.h b/src/modules/editor/scripteditor.h index f19b9fa8f..06739b1a9 100644 --- a/src/modules/editor/scripteditor.h +++ b/src/modules/editor/scripteditor.h @@ -44,7 +44,7 @@ class QTimer; //typedef KviPointerList<int> ColumnList; - +class KviScriptEditorSyntaxHighlighter; class KviScriptEditorWidget : public QTextEdit { Q_OBJECT @@ -55,6 +55,7 @@ public: public: QString m_szFind; protected: + KviScriptEditorSyntaxHighlighter *m_pSyntaxHighlighter; QCompleter * m_pCompleter; QStringList * m_pListModulesNames; QStringList * m_pListCompletition; @@ -62,6 +63,7 @@ protected: QWidget * m_pParent; QString m_szHelp; public: + KviScriptEditorSyntaxHighlighter * syntaxHighlighter(){return m_pSyntaxHighlighter;}; void createCompleter(QStringList &list); void loadCompleterFromFile(); QCompleter * completer() const { return m_pCompleter; }; @@ -97,6 +99,7 @@ protected: protected slots: void okClicked(); + }; class KviScriptEditorSyntaxHighlighter : public QSyntaxHighlighter @@ -109,6 +112,27 @@ public: public: QTextEdit * textEdit(){ return m_pTextEdit; } void highlightBlock(const QString & szText); + void updateSyntaxtTextFormat(); +private: + struct KviScriptHighlightingRule + { + QRegExp pattern; + QTextCharFormat format; + }; + QVector<KviScriptHighlightingRule> highlightingRules; + QRegExp commentStartExpression; + QRegExp commentEndExpression; + + QTextCharFormat bracketFormat; + QTextCharFormat punctuationFormat; + QTextCharFormat keywordFormat; + QTextCharFormat variableFormat; + QTextCharFormat normaltextFormat; + QTextCharFormat findFormat; + QTextCharFormat functionFormat; + QTextCharFormat commentFormat; + + }; class KviScriptEditorImplementation : public KviScriptEditor @@ -120,6 +144,7 @@ public: public: QLineEdit * m_pFindLineEdit; protected: + KviScriptEditorWidget * m_pEditor; QLabel * m_pRowColLabel; int m_lastCursorPos; @@ -137,11 +162,14 @@ public: void setCursorPosition(int iPos); int cursor(){ return m_lastCursorPos; }; QLineEdit * findLineEdit(){ return m_pFindLineEdit; }; + protected: virtual void focusInEvent(QFocusEvent * e); void loadOptions(); void saveOptions(); + protected slots: + void saveToFile(); void loadFromFile(); void configureColors(); |
