mirror of
https://github.com/ciromattia/kcc
synced 2025-12-23 22:51:45 +00:00
Added drag & drop support
This commit is contained in:
@@ -712,6 +712,7 @@ class KCCGUI(KCC_ui.Ui_KCC):
|
|||||||
icon.addPixmap(QtGui.QPixmap(":/Other/icons/convert.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
|
icon.addPixmap(QtGui.QPixmap(":/Other/icons/convert.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
|
||||||
GUI.ConvertButton.setIcon(icon)
|
GUI.ConvertButton.setIcon(icon)
|
||||||
GUI.ConvertButton.setText('Convert')
|
GUI.ConvertButton.setText('Convert')
|
||||||
|
GUI.Form.setAcceptDrops(True)
|
||||||
else:
|
else:
|
||||||
self.conversionAlive = True
|
self.conversionAlive = True
|
||||||
self.worker.sync()
|
self.worker.sync()
|
||||||
@@ -719,6 +720,7 @@ class KCCGUI(KCC_ui.Ui_KCC):
|
|||||||
icon.addPixmap(QtGui.QPixmap(":/Other/icons/clear.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
|
icon.addPixmap(QtGui.QPixmap(":/Other/icons/clear.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
|
||||||
GUI.ConvertButton.setIcon(icon)
|
GUI.ConvertButton.setIcon(icon)
|
||||||
GUI.ConvertButton.setText('Abort')
|
GUI.ConvertButton.setText('Abort')
|
||||||
|
GUI.Form.setAcceptDrops(False)
|
||||||
|
|
||||||
def toggleWebtoonBox(self, value):
|
def toggleWebtoonBox(self, value):
|
||||||
if value:
|
if value:
|
||||||
@@ -943,6 +945,7 @@ class KCCGUI(KCC_ui.Ui_KCC):
|
|||||||
def handleMessage(self, message):
|
def handleMessage(self, message):
|
||||||
MW.raise_()
|
MW.raise_()
|
||||||
MW.activateWindow()
|
MW.activateWindow()
|
||||||
|
if type(message) is bytes:
|
||||||
message = message.decode('UTF-8')
|
message = message.decode('UTF-8')
|
||||||
if not self.conversionAlive and message != 'ARISE':
|
if not self.conversionAlive and message != 'ARISE':
|
||||||
if self.needClean:
|
if self.needClean:
|
||||||
@@ -967,6 +970,16 @@ class KCCGUI(KCC_ui.Ui_KCC):
|
|||||||
else:
|
else:
|
||||||
self.addMessage('This file type is unsupported!', 'error')
|
self.addMessage('This file type is unsupported!', 'error')
|
||||||
|
|
||||||
|
def dragAndDrop(self, e):
|
||||||
|
e.accept()
|
||||||
|
|
||||||
|
def dragAndDropAccepted(self, e):
|
||||||
|
for message in e.mimeData().urls():
|
||||||
|
message = urllib.parse.unquote(message.toString().replace('file:///', ''))
|
||||||
|
if sys.platform.startswith('win'):
|
||||||
|
message = message.replace('/', '\\')
|
||||||
|
self.handleMessage(message)
|
||||||
|
|
||||||
# noinspection PyArgumentList
|
# noinspection PyArgumentList
|
||||||
def __init__(self, KCCAplication, KCCWindow):
|
def __init__(self, KCCAplication, KCCWindow):
|
||||||
global APP, MW, GUI
|
global APP, MW, GUI
|
||||||
@@ -1152,6 +1165,10 @@ class KCCGUI(KCC_ui.Ui_KCC):
|
|||||||
MW.hideProgressBar.connect(self.hideProgressBar)
|
MW.hideProgressBar.connect(self.hideProgressBar)
|
||||||
MW.closeEvent = self.saveSettings
|
MW.closeEvent = self.saveSettings
|
||||||
|
|
||||||
|
GUI.Form.setAcceptDrops(True)
|
||||||
|
GUI.Form.dragEnterEvent = self.dragAndDrop
|
||||||
|
GUI.Form.dropEvent = self.dragAndDropAccepted
|
||||||
|
|
||||||
for profile in profilesGUI:
|
for profile in profilesGUI:
|
||||||
if profile == "Other":
|
if profile == "Other":
|
||||||
GUI.DeviceBox.addItem(self.icons.deviceOther, profile)
|
GUI.DeviceBox.addItem(self.icons.deviceOther, profile)
|
||||||
|
|||||||
Reference in New Issue
Block a user