1
0
mirror of https://github.com/ciromattia/kcc synced 2026-07-01 10:35:29 +00:00

Made code more thread-safe

This commit is contained in:
Paweł Jastrzębski
2013-06-11 13:56:44 +02:00
parent b2d90c2ac1
commit 2a169d50ec
+16 -3
View File
@@ -63,7 +63,8 @@ class WorkerThread(QtCore.QThread):
self.wait() self.wait()
def run(self): def run(self):
self.parent.modeConvert(False) self.emit(QtCore.SIGNAL("modeConvert"), False)
#self.parent.modeConvert(False)
profile = ProfileData.ProfileLabels[str(GUI.DeviceBox.currentText())] profile = ProfileData.ProfileLabels[str(GUI.DeviceBox.currentText())]
argv = ["--profile=" + profile] argv = ["--profile=" + profile]
currentJobs = [] currentJobs = []
@@ -158,7 +159,8 @@ class WorkerThread(QtCore.QThread):
self.parent.addMessage('Try converting smaller batch.', icons.error) self.parent.addMessage('Try converting smaller batch.', icons.error)
self.parent.needClean = True self.parent.needClean = True
self.parent.addMessage('All jobs completed.', icons.warning) self.parent.addMessage('All jobs completed.', icons.warning)
self.parent.modeConvert(True) self.emit(QtCore.SIGNAL("modeConvert"), True)
#self.parent.modeConvert(True)
# noinspection PyBroadException # noinspection PyBroadException
@@ -211,6 +213,7 @@ class Ui_KCC(object):
GUI.JobList.takeItem(i) GUI.JobList.takeItem(i)
def modeBasic(self): def modeBasic(self):
self.currentMode = 1
MainWindow.setMinimumSize(QtCore.QSize(420, 270)) MainWindow.setMinimumSize(QtCore.QSize(420, 270))
MainWindow.setMaximumSize(QtCore.QSize(420, 270)) MainWindow.setMaximumSize(QtCore.QSize(420, 270))
MainWindow.resize(420, 270) MainWindow.resize(420, 270)
@@ -236,6 +239,7 @@ class Ui_KCC(object):
GUI.customHeight.setText('') GUI.customHeight.setText('')
def modeAdvanced(self): def modeAdvanced(self):
self.currentMode = 2
MainWindow.setMinimumSize(QtCore.QSize(420, 345)) MainWindow.setMinimumSize(QtCore.QSize(420, 345))
MainWindow.setMaximumSize(QtCore.QSize(420, 345)) MainWindow.setMaximumSize(QtCore.QSize(420, 345))
MainWindow.resize(420, 345) MainWindow.resize(420, 345)
@@ -254,6 +258,7 @@ class Ui_KCC(object):
def modeExpert(self): def modeExpert(self):
self.modeAdvanced() self.modeAdvanced()
self.currentMode = 3
MainWindow.setMinimumSize(QtCore.QSize(420, 380)) MainWindow.setMinimumSize(QtCore.QSize(420, 380))
MainWindow.setMaximumSize(QtCore.QSize(420, 380)) MainWindow.setMaximumSize(QtCore.QSize(420, 380))
MainWindow.resize(420, 380) MainWindow.resize(420, 380)
@@ -263,7 +268,6 @@ class Ui_KCC(object):
GUI.OptionsExpert.setEnabled(True) GUI.OptionsExpert.setEnabled(True)
def modeConvert(self, enable): def modeConvert(self, enable):
# TODO: mode levels
GUI.BasicModeButton.setEnabled(enable) GUI.BasicModeButton.setEnabled(enable)
GUI.AdvModeButton.setEnabled(enable) GUI.AdvModeButton.setEnabled(enable)
GUI.ExpertModeButton.setEnabled(enable) GUI.ExpertModeButton.setEnabled(enable)
@@ -277,6 +281,13 @@ class Ui_KCC(object):
GUI.OptionsAdvanced.setEnabled(enable) GUI.OptionsAdvanced.setEnabled(enable)
GUI.OptionsAdvancedGamma.setEnabled(enable) GUI.OptionsAdvancedGamma.setEnabled(enable)
GUI.OptionsExpert.setEnabled(enable) GUI.OptionsExpert.setEnabled(enable)
if enable:
if self.currentMode == 1:
self.modeBasic()
if self.currentMode == 2:
self.modeAdvanced()
if self.currentMode == 3:
self.modeExpert()
def changeGamma(self, value): def changeGamma(self, value):
if value <= 9: if value <= 9:
@@ -324,6 +335,7 @@ class Ui_KCC(object):
self.needClean = True self.needClean = True
self.GammaValue = 0 self.GammaValue = 0
self.lastPath = '' self.lastPath = ''
self.currentMode = 1
self.addMessage('Welcome!', icons.info) self.addMessage('Welcome!', icons.info)
self.addMessage('Remember: All options have additional informations in tooltips.', icons.info) self.addMessage('Remember: All options have additional informations in tooltips.', icons.info)
@@ -349,6 +361,7 @@ class Ui_KCC(object):
GUI.ConvertButton.clicked.connect(self.convertStart) GUI.ConvertButton.clicked.connect(self.convertStart)
GUI.GammaSlider.valueChanged.connect(self.changeGamma) GUI.GammaSlider.valueChanged.connect(self.changeGamma)
self.thread.connect(self.thread, QtCore.SIGNAL("progressBarTick"), self.updateProgressbar) self.thread.connect(self.thread, QtCore.SIGNAL("progressBarTick"), self.updateProgressbar)
self.thread.connect(self.thread, QtCore.SIGNAL("modeConvert"), self.modeConvert)
for profile in profiles: for profile in profiles:
GUI.DeviceBox.addItem(icons.deviceKindle, profile) GUI.DeviceBox.addItem(icons.deviceKindle, profile)