src/eric7/Preferences/ConfigurationPages/EditorMouseClickHandlerJediPage.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9413
80c06d472826
equal deleted inserted replaced
9220:e9e7eca7efee 9221:bf71ee032bb4
8 """ 8 """
9 9
10 from PyQt6.QtCore import pyqtSlot 10 from PyQt6.QtCore import pyqtSlot
11 from PyQt6.QtWidgets import QDialog 11 from PyQt6.QtWidgets import QDialog
12 12
13 from Preferences.ConfigurationPages.ConfigurationPageBase import ( 13 from Preferences.ConfigurationPages.ConfigurationPageBase import ConfigurationPageBase
14 ConfigurationPageBase
15 )
16 14
17 from .Ui_EditorMouseClickHandlerJediPage import ( 15 from .Ui_EditorMouseClickHandlerJediPage import Ui_EditorMouseClickHandlerJediPage
18 Ui_EditorMouseClickHandlerJediPage
19 )
20 16
21 from Utilities import MouseUtilities 17 from Utilities import MouseUtilities
22 18
23 import Preferences 19 import Preferences
24 from Preferences.MouseClickDialog import MouseClickDialog 20 from Preferences.MouseClickDialog import MouseClickDialog
25 21
26 22
27 class EditorMouseClickHandlerJediPage(ConfigurationPageBase, 23 class EditorMouseClickHandlerJediPage(
28 Ui_EditorMouseClickHandlerJediPage): 24 ConfigurationPageBase, Ui_EditorMouseClickHandlerJediPage
25 ):
29 """ 26 """
30 Class implementing the Jedi Mouse Click Handler configuration page. 27 Class implementing the Jedi Mouse Click Handler configuration page.
31 """ 28 """
29
32 def __init__(self): 30 def __init__(self):
33 """ 31 """
34 Constructor 32 Constructor
35 """ 33 """
36 super().__init__() 34 super().__init__()
37 self.setupUi(self) 35 self.setupUi(self)
38 self.setObjectName("MouseClickHandlerJediPage") 36 self.setObjectName("MouseClickHandlerJediPage")
39 37
40 # set initial values 38 # set initial values
41 self.__modifiers = { 39 self.__modifiers = {
42 "goto": ( 40 "goto": (
43 Preferences.getJedi("MouseClickGotoModifiers"), 41 Preferences.getJedi("MouseClickGotoModifiers"),
44 Preferences.getJedi("MouseClickGotoButton") 42 Preferences.getJedi("MouseClickGotoButton"),
45 ) 43 )
46 } 44 }
47 45
48 self.jediClickHandlerCheckBox.setChecked( 46 self.jediClickHandlerCheckBox.setChecked(
49 Preferences.getJedi("MouseClickEnabled")) 47 Preferences.getJedi("MouseClickEnabled")
50 self.gotoClickEdit.setText(MouseUtilities.MouseButtonModifier2String( 48 )
51 *self.__modifiers["goto"])) 49 self.gotoClickEdit.setText(
52 50 MouseUtilities.MouseButtonModifier2String(*self.__modifiers["goto"])
51 )
52
53 def save(self): 53 def save(self):
54 """ 54 """
55 Public slot to save the Jedi Mouse Click Handler configuration. 55 Public slot to save the Jedi Mouse Click Handler configuration.
56 """ 56 """
57 Preferences.setJedi( 57 Preferences.setJedi(
58 "MouseClickEnabled", self.jediClickHandlerCheckBox.isChecked()) 58 "MouseClickEnabled", self.jediClickHandlerCheckBox.isChecked()
59 Preferences.setJedi( 59 )
60 "MouseClickGotoModifiers", self.__modifiers["goto"][0]) 60 Preferences.setJedi("MouseClickGotoModifiers", self.__modifiers["goto"][0])
61 Preferences.setJedi( 61 Preferences.setJedi("MouseClickGotoButton", self.__modifiers["goto"][1])
62 "MouseClickGotoButton", self.__modifiers["goto"][1]) 62
63
64 @pyqtSlot() 63 @pyqtSlot()
65 def on_changeGotoButton_clicked(self): 64 def on_changeGotoButton_clicked(self):
66 """ 65 """
67 Private slot to change the 'goto' mouse click sequence. 66 Private slot to change the 'goto' mouse click sequence.
68 """ 67 """
69 dlg = MouseClickDialog(*self.__modifiers["goto"]) 68 dlg = MouseClickDialog(*self.__modifiers["goto"])
70 if dlg.exec() == QDialog.DialogCode.Accepted: 69 if dlg.exec() == QDialog.DialogCode.Accepted:
71 self.__modifiers["goto"] = dlg.getClick() 70 self.__modifiers["goto"] = dlg.getClick()
72 self.gotoClickEdit.setText( 71 self.gotoClickEdit.setText(
73 MouseUtilities.MouseButtonModifier2String( 72 MouseUtilities.MouseButtonModifier2String(*self.__modifiers["goto"])
74 *self.__modifiers["goto"])) 73 )
75 74
76 75
77 def create(dlg): 76 def create(dlg):
78 """ 77 """
79 Module function to create the configuration page. 78 Module function to create the configuration page.
80 79
81 @param dlg reference to the configuration dialog 80 @param dlg reference to the configuration dialog
82 @return reference to the instantiated page (ConfigurationPageBase) 81 @return reference to the instantiated page (ConfigurationPageBase)
83 """ 82 """
84 page = EditorMouseClickHandlerJediPage() 83 page = EditorMouseClickHandlerJediPage()
85 return page 84 return page

eric ide

mercurial