mirror of
https://github.com/fergalmoran/picard.git
synced 2026-01-06 00:23:58 +00:00
functional renaming option
This commit is contained in:
@@ -116,13 +116,18 @@ class AdvancedScriptItem(QtGui.QWidget):
|
||||
|
||||
def set_rename_connection(self, rename):
|
||||
menu_options = self.menu.actions()
|
||||
menu_options[1].triggered.connect(rename)
|
||||
menu_options[0].triggered.connect(rename)
|
||||
|
||||
def set_checkbox_connection(self, check_state):
|
||||
layout = self.layout()
|
||||
checkbox = layout.itemAtPosition(0, self._CHECKBOX_POS).widget()
|
||||
checkbox.stateChanged.connect(partial(check_state))
|
||||
|
||||
def update_name(self, name):
|
||||
layout = self.layout()
|
||||
checkbox = layout.itemAtPosition(0, self._CHECKBOX_POS).widget()
|
||||
checkbox.setText(name)
|
||||
|
||||
def checkbox_state(self):
|
||||
layout = self.layout()
|
||||
checkbox = layout.itemAtPosition(0, self._CHECKBOX_POS).widget()
|
||||
@@ -233,6 +238,7 @@ class ScriptingOptionsPage(OptionsPage):
|
||||
self.ui.setupUi(self)
|
||||
self.highlighter = TaggerScriptSyntaxHighlighter(self.ui.tagger_script.document())
|
||||
self.ui.tagger_script.textChanged.connect(self.live_update_and_check)
|
||||
self.ui.script_name.textChanged.connect(self.script_name_changed)
|
||||
self.ui.add_script.clicked.connect(self.add_to_list_of_scripts)
|
||||
#self.ui.remove_script.clicked.connect(self.remove_from_list_of_scripts)
|
||||
#self.ui.up_script.clicked.connect(lambda: self.move_script(1))
|
||||
@@ -240,7 +246,7 @@ class ScriptingOptionsPage(OptionsPage):
|
||||
self.ui.script_list.itemSelectionChanged.connect(self.script_selected)
|
||||
self.ui.script_list.itemChanged.connect(self.script_attr_changed)
|
||||
self.ui.tagger_script.setEnabled(False)
|
||||
|
||||
self.ui.script_name.setEnabled(False)
|
||||
self.listitem_to_scriptitem = {}
|
||||
self.list_of_scripts = []
|
||||
|
||||
@@ -268,28 +274,48 @@ class ScriptingOptionsPage(OptionsPage):
|
||||
self.move_script(step)
|
||||
print 'it works'
|
||||
|
||||
def script_name_changed(self):
|
||||
items = self.ui.script_list.selectedItems()
|
||||
if items:
|
||||
script = self.listitem_to_scriptitem[items[0]]
|
||||
script.name = self.ui.script_name.text()
|
||||
list_widget = self.ui.script_list.itemWidget(items[0])
|
||||
list_widget.update_name(script.name)
|
||||
self.list_of_scripts[script.pos] = script.get_all()
|
||||
|
||||
def script_attr_changed(self, item):
|
||||
item.setSelected(True)
|
||||
script = self.listitem_to_scriptitem[item]
|
||||
'''
|
||||
if item.checkState():
|
||||
script.enabled = True
|
||||
else:
|
||||
script.enabled = False
|
||||
script.name = item.text()
|
||||
'''
|
||||
script.name = self.ui.script_name.text()
|
||||
self.list_of_scripts[script.pos] = script.get_all()
|
||||
|
||||
def script_selected(self):
|
||||
items = self.ui.script_list.selectedItems()
|
||||
if items:
|
||||
self.ui.tagger_script.setEnabled(True)
|
||||
self.ui.script_name.setEnabled(True)
|
||||
script = self.listitem_to_scriptitem[items[0]]
|
||||
self.ui.tagger_script.setText(script.text)
|
||||
self.ui.script_name.setText(script.name)
|
||||
|
||||
def setSignals(self, list_widget, item):
|
||||
list_widget.set_up_connection(lambda: self.move_script(self.ui.script_list.row(item), 1))
|
||||
list_widget.set_down_connection(lambda: self.move_script(self.ui.script_list.row(item), -1))
|
||||
list_widget.set_remove_connection(lambda: self.remove_from_list_of_scripts(self.ui.script_list.row(item)))
|
||||
list_widget.set_checkbox_connection(lambda: self.update_check_state(item,list_widget.checkbox_state()))
|
||||
list_widget.set_rename_connection(lambda: self.rename_script(item))
|
||||
|
||||
def rename_script(self, item):
|
||||
self.ui.script_list.setItemSelected(item, True)
|
||||
self.ui.script_name.setFocus()
|
||||
self.ui.script_name.selectAll()
|
||||
|
||||
def update_check_state(self, item, checkbox_state):
|
||||
script = self.listitem_to_scriptitem[item]
|
||||
|
||||
@@ -57,14 +57,14 @@ class Ui_ScriptingOptionsPage(object):
|
||||
self.add_script.setAutoRaise(False)
|
||||
self.add_script.setObjectName(_fromUtf8("add_script"))
|
||||
self.gridLayout.addWidget(self.add_script, 0, 2, 1, 1)
|
||||
self.lineEdit = QtGui.QLineEdit(self.groupBox)
|
||||
self.script_name = QtGui.QLineEdit(self.groupBox)
|
||||
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.lineEdit.sizePolicy().hasHeightForWidth())
|
||||
self.lineEdit.setSizePolicy(sizePolicy)
|
||||
self.lineEdit.setObjectName(_fromUtf8("lineEdit"))
|
||||
self.gridLayout.addWidget(self.lineEdit, 2, 4, 1, 2)
|
||||
sizePolicy.setHeightForWidth(self.script_name.sizePolicy().hasHeightForWidth())
|
||||
self.script_name.setSizePolicy(sizePolicy)
|
||||
self.script_name.setObjectName(_fromUtf8("script_name"))
|
||||
self.gridLayout.addWidget(self.script_name, 2, 4, 1, 2)
|
||||
self.verticalLayout.addWidget(self.groupBox)
|
||||
self.script_error = QtGui.QLabel(self.enable_tagger_scripts)
|
||||
self.script_error.setText(_fromUtf8(""))
|
||||
@@ -86,5 +86,5 @@ class Ui_ScriptingOptionsPage(object):
|
||||
self.enable_tagger_scripts.setTitle(_("Tagger Script(s)"))
|
||||
self.add_script.setToolTip(_("Add script"))
|
||||
self.add_script.setText(_("..."))
|
||||
self.lineEdit.setPlaceholderText(_("Display Name"))
|
||||
self.script_name.setPlaceholderText(_("Display Name"))
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="4" colspan="2">
|
||||
<widget class="QLineEdit" name="lineEdit">
|
||||
<widget class="QLineEdit" name="script_name">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
|
||||
Reference in New Issue
Block a user