mirror of
https://github.com/fergalmoran/picard.git
synced 2026-01-03 07:03:58 +00:00
added live syntax check to scripting options, fixed its font
This commit is contained in:
@@ -70,11 +70,24 @@ class ScriptingOptionsPage(OptionsPage):
|
||||
TextOption("setting", "tagger_script", ""),
|
||||
]
|
||||
|
||||
STYLESHEET_ERROR = "QWidget { background-color: #f55; color: white; font-weight:bold }"
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super(ScriptingOptionsPage, self).__init__(parent)
|
||||
self.ui = Ui_ScriptingOptionsPage()
|
||||
self.ui.setupUi(self)
|
||||
self.highlighter = TaggerScriptSyntaxHighlighter(self.ui.tagger_script.document())
|
||||
self.connect(self.ui.tagger_script, QtCore.SIGNAL("textChanged()"), self.live_checker)
|
||||
|
||||
def live_checker(self):
|
||||
self.ui.script_error.setStyleSheet("");
|
||||
self.ui.script_error.setText("")
|
||||
try:
|
||||
self.check()
|
||||
except OptionsCheckError, e:
|
||||
self.ui.script_error.setStyleSheet(self.STYLESHEET_ERROR);
|
||||
self.ui.script_error.setText(e.message)
|
||||
return
|
||||
|
||||
def check(self):
|
||||
parser = ScriptParser()
|
||||
@@ -91,5 +104,4 @@ class ScriptingOptionsPage(OptionsPage):
|
||||
self.config.setting["enable_tagger_script"] = self.ui.enable_tagger_script.isChecked()
|
||||
self.config.setting["tagger_script"] = self.ui.tagger_script.toPlainText()
|
||||
|
||||
|
||||
register_options_page(ScriptingOptionsPage)
|
||||
register_options_page(ScriptingOptionsPage)
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
# Form implementation generated from reading ui file 'ui/options_script.ui'
|
||||
#
|
||||
# Created: Sun Jan 13 17:42:15 2008
|
||||
# by: PyQt4 UI code generator 4.3
|
||||
# Created: Tue Feb 24 22:56:42 2009
|
||||
# by: PyQt4 UI code generator 4.4.4
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
@@ -12,37 +12,28 @@ from PyQt4 import QtCore, QtGui
|
||||
class Ui_ScriptingOptionsPage(object):
|
||||
def setupUi(self, ScriptingOptionsPage):
|
||||
ScriptingOptionsPage.setObjectName("ScriptingOptionsPage")
|
||||
ScriptingOptionsPage.resize(QtCore.QSize(QtCore.QRect(0,0,222,228).size()).expandedTo(ScriptingOptionsPage.minimumSizeHint()))
|
||||
|
||||
ScriptingOptionsPage.resize(605, 377)
|
||||
self.vboxlayout = QtGui.QVBoxLayout(ScriptingOptionsPage)
|
||||
self.vboxlayout.setMargin(9)
|
||||
self.vboxlayout.setSpacing(6)
|
||||
self.vboxlayout.setMargin(9)
|
||||
self.vboxlayout.setObjectName("vboxlayout")
|
||||
|
||||
self.enable_tagger_script = QtGui.QGroupBox(ScriptingOptionsPage)
|
||||
self.enable_tagger_script.setCheckable(True)
|
||||
self.enable_tagger_script.setObjectName("enable_tagger_script")
|
||||
|
||||
self.vboxlayout1 = QtGui.QVBoxLayout(self.enable_tagger_script)
|
||||
self.vboxlayout1.setMargin(9)
|
||||
self.vboxlayout1.setSpacing(6)
|
||||
self.vboxlayout1.setObjectName("vboxlayout1")
|
||||
|
||||
self.verticalLayout = QtGui.QVBoxLayout(self.enable_tagger_script)
|
||||
self.verticalLayout.setObjectName("verticalLayout")
|
||||
self.tagger_script = QtGui.QTextEdit(self.enable_tagger_script)
|
||||
|
||||
font = QtGui.QFont()
|
||||
font.setFamily("Courier")
|
||||
font.setPointSize(8)
|
||||
font.setWeight(50)
|
||||
font.setItalic(False)
|
||||
font.setUnderline(False)
|
||||
font.setStrikeOut(False)
|
||||
font.setBold(False)
|
||||
font.setFamily("Monospace")
|
||||
self.tagger_script.setFont(font)
|
||||
self.tagger_script.setLineWrapMode(QtGui.QTextEdit.NoWrap)
|
||||
self.tagger_script.setAcceptRichText(False)
|
||||
self.tagger_script.setObjectName("tagger_script")
|
||||
self.vboxlayout1.addWidget(self.tagger_script)
|
||||
self.verticalLayout.addWidget(self.tagger_script)
|
||||
self.script_error = QtGui.QLabel(self.enable_tagger_script)
|
||||
self.script_error.setAlignment(QtCore.Qt.AlignCenter)
|
||||
self.script_error.setObjectName("script_error")
|
||||
self.verticalLayout.addWidget(self.script_error)
|
||||
self.vboxlayout.addWidget(self.enable_tagger_script)
|
||||
|
||||
self.retranslateUi(ScriptingOptionsPage)
|
||||
|
||||
@@ -5,17 +5,17 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>222</width>
|
||||
<height>228</height>
|
||||
<width>605</width>
|
||||
<height>377</height>
|
||||
</rect>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" >
|
||||
<property name="margin" >
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="spacing" >
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="margin" >
|
||||
<number>9</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="enable_tagger_script" >
|
||||
<property name="title" >
|
||||
@@ -24,24 +24,12 @@
|
||||
<property name="checkable" >
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" >
|
||||
<property name="margin" >
|
||||
<number>9</number>
|
||||
</property>
|
||||
<property name="spacing" >
|
||||
<number>6</number>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout" >
|
||||
<item>
|
||||
<widget class="QTextEdit" name="tagger_script" >
|
||||
<property name="font" >
|
||||
<font>
|
||||
<family>Courier</family>
|
||||
<pointsize>8</pointsize>
|
||||
<weight>50</weight>
|
||||
<italic>false</italic>
|
||||
<bold>false</bold>
|
||||
<underline>false</underline>
|
||||
<strikeout>false</strikeout>
|
||||
<family>Monospace</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="lineWrapMode" >
|
||||
@@ -52,6 +40,16 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="script_error" >
|
||||
<property name="text" >
|
||||
<string/>
|
||||
</property>
|
||||
<property name="alignment" >
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
Reference in New Issue
Block a user