diff options
| author | tassaron | 2017-06-08 22:31:02 -0400 |
|---|---|---|
| committer | tassaron | 2017-06-08 22:31:02 -0400 |
| commit | c51d86dd74c0548a0e81725534b78e23f6b6acaa (patch) | |
| tree | 3316cb7ac434a73469451045a5e3603fab767da7 | |
| parent | 4fc73f1e094289b50f828f0a3128d710e1d9ec4c (diff) | |
preset searchbar works, ui experimentally changed
closebutton where I keep expecting it to be
| -rw-r--r-- | presetmanager.py | 53 | ||||
| -rw-r--r-- | presetmanager.ui | 26 | ||||
| -rw-r--r-- | video_thread.py | 2 |
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><html><head/><body><p><span style=" font-style:italic;">Right-click components in the list to create presets.</span></p></body></html></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) |
