Wed, 26 May 2021 19:07:42 +0200
Ported the plug-in to PyQt6 for eric7.
# -*- coding: utf-8 -*- # Copyright (c) 2015 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> # """ Module implementing the Rope Mouse Click Handler configuration page. """ from PyQt6.QtCore import pyqtSlot from PyQt6.QtWidgets import QDialog from Preferences.ConfigurationPages.ConfigurationPageBase import ( ConfigurationPageBase ) from .Ui_MouseClickHandlerRopePage import Ui_MouseClickHandlerRopePage from Utilities import MouseUtilities from Preferences.MouseClickDialog import MouseClickDialog class MouseClickHandlerRopePage(ConfigurationPageBase, Ui_MouseClickHandlerRopePage): """ Class implementing the Rope Mouse Click Handler configuration page. """ def __init__(self, plugin): """ Constructor @param plugin reference to the plugin object @type RefactoringRopePlugin """ ConfigurationPageBase.__init__(self) self.setupUi(self) self.setObjectName("MouseClickHandlerRopePage") self.__plugin = plugin # set initial values self.__modifiers = { "goto": ( self.__plugin.getPreferences("MouseClickGotoModifiers"), self.__plugin.getPreferences("MouseClickGotoButton") ) } self.ropeClickHandlerCheckBox.setChecked( self.__plugin.getPreferences("MouseClickEnabled")) self.gotoClickEdit.setText(MouseUtilities.MouseButtonModifier2String( *self.__modifiers["goto"])) def save(self): """ Public slot to save the Rope Mouse Click Handler configuration. """ self.__plugin.setPreferences( "MouseClickEnabled", self.ropeClickHandlerCheckBox.isChecked()) self.__plugin.setPreferences( "MouseClickGotoModifiers", int(self.__modifiers["goto"][0])) self.__plugin.setPreferences( "MouseClickGotoButton", int(self.__modifiers["goto"][1])) @pyqtSlot() def on_changeGotoButton_clicked(self): """ Private slot to change the 'goto' mouse click sequence. """ dlg = MouseClickDialog(*self.__modifiers["goto"]) if dlg.exec() == QDialog.DialogCode.Accepted: self.__modifiers["goto"] = dlg.getClick() self.gotoClickEdit.setText( MouseUtilities.MouseButtonModifier2String( *self.__modifiers["goto"]))