summaryrefslogtreecommitdiffstats
path: root/Plugins/PythonSyntaxHighlighter/pythonsyntaxhighlighter.h
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins/PythonSyntaxHighlighter/pythonsyntaxhighlighter.h')
-rw-r--r--Plugins/PythonSyntaxHighlighter/pythonsyntaxhighlighter.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/Plugins/PythonSyntaxHighlighter/pythonsyntaxhighlighter.h b/Plugins/PythonSyntaxHighlighter/pythonsyntaxhighlighter.h
new file mode 100644
index 0000000..b9ecc1d
--- /dev/null
+++ b/Plugins/PythonSyntaxHighlighter/pythonsyntaxhighlighter.h
@@ -0,0 +1,42 @@
+#ifndef PYTHONSYNTAXHIGHLIGHTER_H
+#define PYTHONSYNTAXHIGHLIGHTER_H
+
+#include "pythonsyntaxhighlighter_global.h"
+#include "syntaxhighlighterplugin.h"
+#include "plugins/genericplugin.h"
+#include <QMap>
+#include <QObject>
+#include <QString>
+#include <QTextCharFormat>
+
+class PYTHONSYNTAXHIGHLIGHTERSHARED_EXPORT PythonSyntaxHighlighterPlugin : public GenericPlugin, public SyntaxHighlighterPlugin
+{
+ Q_OBJECT
+ SQLITESTUDIO_PLUGIN("pythonsyntaxhighlighter.json")
+
+ public:
+ enum State
+ {
+ STANDARD,
+ KEYWORD,
+ DEFCLASS,
+ SELF,
+ OPERATOR,
+ BRACE,
+ STRING,
+ NUMBER,
+ COMMENT
+ };
+
+ PythonSyntaxHighlighterPlugin();
+
+ QString getLanguageName() const;
+ QSyntaxHighlighter* createSyntaxHighlighter(QWidget* textEdit) const;
+ QString previewSampleCode() const;
+ void refreshFormats();
+
+ private:
+ QMap<PythonSyntaxHighlighterPlugin::State, QTextCharFormat> styles;
+};
+
+#endif // PYTHONSYNTAXHIGHLIGHTER_H