Implement Hotkeys

This commit is contained in:
DH4 2017-06-23 01:20:59 -05:00
parent 2c63b05376
commit 60d62599f7
1 changed files with 36 additions and 3 deletions

View File

@ -1,7 +1,7 @@
from queue import Queue from queue import Queue
from PyQt4 import QtCore, QtGui, uic from PyQt4 import QtCore, QtGui, uic
from PyQt4.QtCore import QSettings, Qt from PyQt4.QtCore import QSettings, Qt
from PyQt4.QtGui import QMenu from PyQt4.QtGui import QMenu, QShortcut
import sys import sys
import os import os
import signal import signal
@ -39,14 +39,14 @@ class PreviewWindow(QtGui.QLabel):
self.repaint() self.repaint()
class MainWindow(QtCore.QObject): class MainWindow(QtGui.QMainWindow):
newTask = QtCore.pyqtSignal(list) newTask = QtCore.pyqtSignal(list)
processTask = QtCore.pyqtSignal() processTask = QtCore.pyqtSignal()
videoTask = QtCore.pyqtSignal(str, str, list) videoTask = QtCore.pyqtSignal(str, str, list)
def __init__(self, window): def __init__(self, window):
QtCore.QObject.__init__(self) QtGui.QMainWindow.__init__(self)
# print('main thread id: {}'.format(QtCore.QThread.currentThreadId())) # print('main thread id: {}'.format(QtCore.QThread.currentThreadId()))
self.window = window self.window = window
@ -230,6 +230,29 @@ class MainWindow(QtCore.QObject):
self.openProject(self.currentProject, prompt=False) self.openProject(self.currentProject, prompt=False)
self.drawPreview() self.drawPreview()
# Setup Hotkeys
QtGui.QShortcut("Ctrl+S", self.window, self.saveCurrentProject)
QtGui.QShortcut("Ctrl+A", self.window, self.openSaveProjectDialog)
QtGui.QShortcut("Ctrl+O", self.window, self.openOpenProjectDialog)
QtGui.QShortcut("Ctrl+N", self.window, self.createNewProject)
QtGui.QShortcut("Ctrl+T", self.window, activated=lambda:
self.window.pushButton_addComponent.click())
QtGui.QShortcut("Ctrl+Space", self.window, activated=lambda:
self.window.listWidget_componentList.setFocus())
QtGui.QShortcut("Ctrl+Shift+S", self.window,
self.presetManager.openSavePresetDialog)
QtGui.QShortcut("Ctrl+Shift+C", self.window,
self.presetManager.clearPreset)
QtGui.QShortcut("Ctrl+Up", self.window,
activated=lambda: self.moveComponent(-1))
QtGui.QShortcut("Ctrl+Down", self.window,
activated=lambda: self.moveComponent(1))
QtGui.QShortcut("Ctrl+Home", self.window, self.moveComponentTop)
QtGui.QShortcut("Ctrl+End", self.window, self.moveComponentBottom)
QtGui.QShortcut("Ctrl+r", self.window, self.removeComponent)
def cleanUp(self): def cleanUp(self):
self.timer.stop() self.timer.stop()
self.previewThread.quit() self.previewThread.quit()
@ -498,6 +521,16 @@ class MainWindow(QtCore.QObject):
stackedWidget.setCurrentIndex(newRow) stackedWidget.setCurrentIndex(newRow)
self.drawPreview() self.drawPreview()
def moveComponentTop(self):
componentList = self.window.listWidget_componentList
row = -componentList.currentRow()
self.moveComponent(row)
def moveComponentBottom(self):
componentList = self.window.listWidget_componentList
row = len(componentList)-1
self.moveComponent(row)
def dragComponent(self, event): def dragComponent(self, event):
'''Drop event for the component listwidget''' '''Drop event for the component listwidget'''
componentList = self.window.listWidget_componentList componentList = self.window.listWidget_componentList