LinVAM/mouseactioneditwnd.py

116 lines
5.9 KiB
Python

from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from ui_mouseactioneditwnd import Ui_MouseActionEditDialog
class MouseActionEditWnd(QDialog):
def __init__(self, p_mouseAction, p_parent = None):
super().__init__(p_parent)
self.ui = Ui_MouseActionEditDialog()
self.ui.setupUi(self)
self.ui.ok.clicked.connect(self.slotOK)
self.ui.cancel.clicked.connect(super().reject)
self.m_mouseAction = {}
if p_mouseAction == None:
return
if p_mouseAction['name'] == 'mouse click action':
self.ui.mouseActionTabWidget.setCurrentIndex(0)
if p_mouseAction['button'] == 'left':
if p_mouseAction['type'] == 10: # click
self.ui.leftClick.setChecked(True)
elif p_mouseAction['type'] == 1: # down
self.ui.leftDown.setChecked(True)
elif p_mouseAction['type'] == 0: # up
self.ui.leftUp.setChecked(True)
elif p_mouseAction['type'] == 11: # double-click
self.ui.leftDclick.setChecked(True)
elif p_mouseAction['button'] == 'right':
if p_mouseAction['type'] == 10:
self.ui.rightClick.setChecked(True)
elif p_mouseAction['type'] == 1:
self.ui.rightDown.setChecked(True)
elif p_mouseAction['type'] == 0:
self.ui.rightUp.setChecked(True)
elif p_mouseAction['type'] == 11: # double-click
self.ui.rightDclick.setChecked(True)
elif p_mouseAction['button'] == 'middle':
if p_mouseAction['type'] == 10:
self.ui.middleClick.setChecked(True)
elif p_mouseAction['type'] == 1:
self.ui.middleDown.setChecked(True)
elif p_mouseAction['type'] == 0:
self.ui.middleUp.setChecked(True)
elif p_mouseAction['type'] == 11: # double-click
self.ui.middleDclick.setChecked(True)
elif p_mouseAction['name'] == 'mouse move action':
self.ui.mouseActionTabWidget.setCurrentIndex(1)
if p_mouseAction['absolute'] == True:
self.ui.moveTo.setChecked(True)
self.ui.xEdit.setText(str(p_mouseAction['x']))
self.ui.yEdit.setText(str(p_mouseAction['y']))
else:
self.ui.moveOffset.setChecked(True)
self.ui.xOffsetEdit.setText(str(p_mouseAction['x']))
self.ui.yOffsetEdit.setText(str(p_mouseAction['y']))
elif p_mouseAction['name'] == 'mouse scroll action':
self.ui.mouseActionTabWidget.setCurrentIndex(1)
if p_mouseAction['delta'] < 0:
self.ui.scrollUp.setChecked(True)
self.ui.scrollUpEdit.setText(str(-p_mouseAction['delta']))
else:
self.ui.scrollDown.setChecked(True)
self.ui.scrollDownEdit.setText(str(p_mouseAction['delta']))
def slotOK(self):
if self.ui.mouseActionTabWidget.currentIndex() == 0:
if self.ui.leftClick.isChecked():
self.m_mouseAction = {'name':'mouse click action', 'button':'left', 'type':10}
elif self.ui.rightClick.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'right', 'type': 10}
elif self.ui.middleClick.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'middle', 'type': 10}
elif self.ui.leftDclick.isChecked():
self.m_mouseAction = {'name':'mouse click action', 'button':'left', 'type':11}
elif self.ui.rightDclick.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'right', 'type': 11}
elif self.ui.middleDclick.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'middle', 'type': 11}
elif self.ui.leftDown.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'left', 'type': 1}
elif self.ui.rightDown.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'right', 'type': 1}
elif self.ui.middleDown.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'middle', 'type': 1}
elif self.ui.leftUp.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'left', 'type': 0}
elif self.ui.rightUp.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'right', 'type': 0}
elif self.ui.middleUp.isChecked():
self.m_mouseAction = {'name': 'mouse click action', 'button': 'middle', 'type': 0}
else:
if self.ui.moveTo.isChecked():
self.m_mouseAction['name'] = 'mouse move action'
self.m_mouseAction['x'] = int(self.ui.xEdit.text())
self.m_mouseAction['y'] = int(self.ui.yEdit.text())
self.m_mouseAction['absolute'] = True
elif self.ui.moveOffset.isChecked():
self.m_mouseAction['name'] = 'mouse move action'
self.m_mouseAction['x'] = int(self.ui.xOffsetEdit.text())
self.m_mouseAction['y'] = int(self.ui.yOffsetEdit.text())
self.m_mouseAction['absolute'] = False
elif self.ui.scrollUp.isChecked():
self.m_mouseAction['name'] = 'mouse scroll action'
self.m_mouseAction['delta'] = -(abs(int(self.ui.scrollUpEdit.text())))
elif self.ui.scrollDown.isChecked():
self.m_mouseAction['name'] = 'mouse scroll action'
self.m_mouseAction['delta'] = abs(int(self.ui.scrollDownEdit.text()))
super().accept()