aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortassaron2017-06-08 22:31:02 -0400
committertassaron2017-06-08 22:31:02 -0400
commitc51d86dd74c0548a0e81725534b78e23f6b6acaa (patch)
tree3316cb7ac434a73469451045a5e3603fab767da7
parent4fc73f1e094289b50f828f0a3128d710e1d9ec4c (diff)
preset searchbar works, ui experimentally changed
closebutton where I keep expecting it to be
-rw-r--r--presetmanager.py53
-rw-r--r--presetmanager.ui26
-rw-r--r--video_thread.py2
3 files changed, 48 insertions, 33 deletions
diff --git a/presetmanager.py b/presetmanager.py
index d7189b1..ff50444 100644
--- a/presetmanager.py
+++ b/presetmanager.py
@@ -8,7 +8,7 @@ import core
class PresetManager(QtGui.QDialog):
def __init__(self, window, parent):
- super().__init__()
+ super().__init__(parent.window)
self.parent = parent
self.core = self.parent.core
self.presetDir = self.core.presetDir
@@ -20,27 +20,30 @@ class PresetManager(QtGui.QDialog):
# connect button signals
self.window.pushButton_delete.clicked.connect(self.openDeletePresetDialog)
self.window.pushButton_rename.clicked.connect(self.openRenamePresetDialog)
+ self.window.pushButton_close.clicked.connect(self.close)
# create filter box and preset list
self.drawFilterList()
self.window.comboBox_filter.currentIndexChanged.connect(
- lambda: self.drawPresetList(self.window.comboBox_filter.currentText())
+ lambda: self.drawPresetList(
+ self.window.comboBox_filter.currentText(), self.window.lineEdit_search.text()
+ )
)
- self.drawPresetList('*')
# make auto-completion for search bar
self.autocomplete = QtGui.QStringListModel()
completer = QtGui.QCompleter()
completer.setModel(self.autocomplete)
self.window.lineEdit_search.setCompleter(completer)
+ self.window.lineEdit_search.textChanged.connect(
+ lambda: self.drawPresetList(
+ self.window.comboBox_filter.currentText(), self.window.lineEdit_search.text()
+ )
+ )
+ self.drawPresetList('*')
def show(self):
'''Open a new preset manager window from the mainwindow'''
- presetNames = []
- for presetList in self.presets.values():
- for preset in presetList:
- presetNames.append(preset[1])
- self.autocomplete.setStringList(presetNames)
self.findPresets()
self.drawFilterList()
self.drawPresetList('*')
@@ -70,19 +73,23 @@ class PresetManager(QtGui.QDialog):
for compName, _, __ in parseList \
}
- def drawPresetList(self, filter=None):
+ def drawPresetList(self, compFilter=None, presetFilter=''):
self.window.listWidget_presets.clear()
- if filter:
- self.lastFilter = str(filter)
+ if compFilter:
+ self.lastFilter = str(compFilter)
else:
- filter = str(self.lastFilter)
+ compFilter = str(self.lastFilter)
self.presetRows = []
+ presetNames = []
for component, presets in self.presets.items():
- if filter != '*' and component != filter:
+ if compFilter != '*' and component != compFilter:
continue
for vers, preset in presets:
- self.window.listWidget_presets.addItem('%s: %s' % (component, preset))
- self.presetRows.append((component, vers, preset))
+ if not presetFilter or presetFilter in preset:
+ self.window.listWidget_presets.addItem('%s: %s' % (component, preset))
+ self.presetRows.append((component, vers, preset))
+ presetNames.append(preset)
+ self.autocomplete.setStringList(presetNames)
def drawFilterList(self):
self.window.comboBox_filter.clear()
@@ -224,19 +231,3 @@ class PresetManager(QtGui.QDialog):
self.findPresets()
self.drawPresetList()
break
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/presetmanager.ui b/presetmanager.ui
index 610de91..a7ef15f 100644
--- a/presetmanager.ui
+++ b/presetmanager.ui
@@ -2,6 +2,9 @@
<ui version="4.0">
<class>presetmanager</class>
<widget class="QWidget" name="presetmanager">
+ <property name="windowModality">
+ <enum>Qt::ApplicationModal</enum>
+ </property>
<property name="geometry">
<rect>
<x>0</x>
@@ -22,7 +25,7 @@
<string/>
</property>
<property name="placeholderText">
- <string>Search</string>
+ <string>Filter by name</string>
</property>
</widget>
</item>
@@ -48,6 +51,9 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
+ <property name="tabKeyNavigation">
+ <bool>true</bool>
+ </property>
</widget>
</item>
</layout>
@@ -98,6 +104,24 @@
</property>
</widget>
</item>
+ <item>
+ <widget class="QPushButton" name="pushButton_close">
+ <property name="text">
+ <string>Close</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_4">
+ <item alignment="Qt::AlignRight">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Right-click components in the list to create presets.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+ </property>
+ </widget>
+ </item>
</layout>
</item>
</layout>
diff --git a/video_thread.py b/video_thread.py
index f5354be..fc877bd 100644
--- a/video_thread.py
+++ b/video_thread.py
@@ -26,7 +26,7 @@ class Worker(QtCore.QObject):
QtCore.QObject.__init__(self)
self.core = core.Core()
self.core.settings = parent.settings
- self.modules = parent.modules
+ self.modules = parent.core.modules
self.stackedWidget = parent.window.stackedWidget
self.parent = parent
parent.videoTask.connect(self.createVideo)