Sat, 29 Jan 2011 15:10:40 +0100
Added the 'rename' refactorings.
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | # Copyright (c) 2011 Detlev Offenbach <detlev@die-offenbachs.de> |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the refactoring interface to rope. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | import os |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import sys |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | sys.path.insert(0, os.path.dirname(__file__)) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | import rope |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | import rope.base.libutils |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | import rope.base.project |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | import rope.base.exceptions |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
19 | import rope.refactor.rename |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
20 | ##import rope.refactor.extract |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
21 | ##import rope.refactor.usefunction |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
22 | ##import rope.refactor.inline |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
23 | ##import rope.refactor.move |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
24 | ##import rope.refactor.change_signature |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
25 | ##import rope.refactor.introduce_factory |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
26 | ##import rope.refactor.introduce_parameter |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
27 | ##import rope.refactor.method_object |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
28 | ##import rope.refactor.encapsulate_field |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
29 | ##import rope.refactor.localtofield |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
30 | ##import rope.refactor.topackage |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
31 | ##from rope.refactor.importutils import ImportOrganizer |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
32 | |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
33 | import rope.contrib.findit |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
34 | ##import rope.contrib.finderrors |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
35 | |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | from PyQt4.QtCore import QObject, SIGNAL |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
37 | from PyQt4.QtGui import QMenu, QApplication, QMessageBox |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | from E5Gui.E5Application import e5App |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | from E5Gui import E5MessageBox |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | from E5Gui.E5Action import E5Action |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | from QScintilla.MiniEditor import MiniEditor |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | from FileSystemCommands import e5FileSystemCommands |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
47 | from ProgressHandle import ProgressHandle |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | from HelpDialog import HelpDialog |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
49 | from MatchesDialog import MatchesDialog |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
50 | from RenameDialog import RenameDialog |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
51 | from ChangeOccurrencesDialog import ChangeOccurrencesDialog |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
52 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
53 | import Utilities |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | class Refactoring(QObject): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | Class implementing the refactoring interface to rope. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | """ |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
60 | def __init__(self, plugin, newStyle, parent=None): |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | Constructor |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | @param plugin reference to the plugin object |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | @param newStyle flag indicating usage of new style signals (bool) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | @param parent parent (QObject) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | QObject.__init__(self, parent) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | self.__plugin = plugin |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | self.__newStyle = newStyle |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | self.__ui = parent |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | self.__e5project = e5App().getObject("Project") |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | self.__projectpath = '' |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | self.__projectLanguage = "" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | self.__projectopen = False |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | self.__mainMenu = None |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | self.__helpDialog = None |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | # Rope objects |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | self.__project = None |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | self.__fsCommands = e5FileSystemCommands(self.__e5project) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | def initActions(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | Public method to define the refactoring actions. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | self.actions = [] |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
91 | ##################################################### |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
92 | ## Rename refactoring actions |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
93 | ##################################################### |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
94 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
95 | self.refactoringRenameAct = E5Action(self.trUtf8('Rename'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
96 | self.trUtf8('&Rename'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
97 | 0, 0, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
98 | self,'refactoring_rename') |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
99 | self.refactoringRenameAct.setStatusTip(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
100 | 'Rename the highlighted object')) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
101 | self.refactoringRenameAct.setWhatsThis(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
102 | """<b>Rename</b>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
103 | """<p>Rename the highlighted Python object.</p>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
104 | )) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
105 | if self.__newStyle: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
106 | self.refactoringRenameAct.triggered[()].connect( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
107 | self.__rename) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
108 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
109 | self.connect(self.refactoringRenameAct, SIGNAL('triggered()'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
110 | self.__rename) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
111 | self.actions.append(self.refactoringRenameAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
112 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
113 | self.refactoringRenameLocalAct = E5Action(self.trUtf8('Local Rename'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
114 | self.trUtf8('&Local Rename'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
115 | 0, 0, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
116 | self,'refactoring_rename_local') |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
117 | self.refactoringRenameLocalAct.setStatusTip(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
118 | 'Rename the highlighted object in the current module only')) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
119 | self.refactoringRenameLocalAct.setWhatsThis(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
120 | """<b>Local Rename</b>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
121 | """<p>Rename the highlighted Python object in the current""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
122 | """ module only.</p>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
123 | )) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
124 | if self.__newStyle: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
125 | self.refactoringRenameLocalAct.triggered[()].connect( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
126 | self.__renameLocal) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
127 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
128 | self.connect(self.refactoringRenameLocalAct, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
129 | SIGNAL('triggered()'), self.__renameLocal) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
130 | self.actions.append(self.refactoringRenameLocalAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
131 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
132 | self.refactoringRenameModuleAct = E5Action( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
133 | self.trUtf8('Rename Current Module'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
134 | self.trUtf8('Rename Current Module'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
135 | 0, 0, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
136 | self,'refactoring_rename_module') |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
137 | self.refactoringRenameModuleAct.setStatusTip(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
138 | 'Rename the current module')) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
139 | self.refactoringRenameModuleAct.setWhatsThis(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
140 | """<b>Rename Current Module</b>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
141 | """<p>Rename the current module.</p>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
142 | )) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
143 | if self.__newStyle: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
144 | self.refactoringRenameModuleAct.triggered[()].connect( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
145 | self.__renameModule) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
146 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
147 | self.connect(self.refactoringRenameModuleAct, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
148 | SIGNAL('triggered()'), self.__renameModule) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
149 | self.actions.append(self.refactoringRenameModuleAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
150 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
151 | self.refactoringChangeOccurrencesAct = E5Action( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
152 | self.trUtf8('Change Occurrences'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
153 | self.trUtf8('Change &Occurrences'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
154 | 0, 0, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
155 | self,'refactoring_change_occurrences') |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
156 | self.refactoringChangeOccurrencesAct.setStatusTip(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
157 | 'Change all occurrences in the local scope')) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
158 | self.refactoringChangeOccurrencesAct.setWhatsThis(self.trUtf8( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
159 | """<b>Change Occurrences</b>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
160 | """<p>Change all occurrences in the local scope.</p>""" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
161 | )) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
162 | if self.__newStyle: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
163 | self.refactoringChangeOccurrencesAct.triggered[()].connect( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
164 | self.__changeOccurrences) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
165 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
166 | self.connect(self.refactoringChangeOccurrencesAct, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
167 | SIGNAL('triggered()'), self.__changeOccurrences) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
168 | self.actions.append(self.refactoringChangeOccurrencesAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
169 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
170 | ##################################################### |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
171 | ## Query actions |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
172 | ##################################################### |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
173 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
174 | self.queryReferencesAct = E5Action(self.trUtf8('Find occurrences'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
175 | self.trUtf8('Find &Occurrences'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
176 | 0, 0, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
177 | self,'refactoring_find_occurrences') |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
178 | self.queryReferencesAct.setStatusTip(self.trUtf8( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
179 | 'Find occurrences of the highlighted object')) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
180 | self.queryReferencesAct.setWhatsThis(self.trUtf8( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
181 | """<b>Find occurrences</b>""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
182 | """<p>Find occurrences of the highlighted class, method,""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
183 | """ function or variable.</p>""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
184 | )) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
185 | if self.__newStyle: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
186 | self.queryReferencesAct.triggered[()].connect( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
187 | self.__queryReferences) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
188 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
189 | self.connect(self.queryReferencesAct, SIGNAL('triggered()'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
190 | self.__queryReferences) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
191 | self.actions.append(self.queryReferencesAct) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
192 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
193 | self.queryDefinitionAct = E5Action(self.trUtf8('Find definition'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
194 | self.trUtf8('Find &Definition'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
195 | 0, 0, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
196 | self,'refactoring_find_definition') |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
197 | self.queryDefinitionAct.setStatusTip(self.trUtf8( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
198 | 'Find definition of the highlighted item')) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
199 | self.queryDefinitionAct.setWhatsThis(self.trUtf8( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
200 | """<b>Find definition</b>""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
201 | """<p>Find the definition of the highlighted class, method,""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
202 | """ function or variable.</p>""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
203 | )) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
204 | if self.__newStyle: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
205 | self.queryDefinitionAct.triggered[()].connect( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
206 | self.__queryDefinition) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
207 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
208 | self.connect(self.queryDefinitionAct, SIGNAL('triggered()'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
209 | self.__queryDefinition) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
210 | self.actions.append(self.queryDefinitionAct) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
211 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
212 | self.queryImplementationsAct = E5Action( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
213 | self.trUtf8('Find implementations'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
214 | self.trUtf8('Find &Implementations'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
215 | 0, 0, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
216 | self,'refactoring_find_implementations') |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
217 | self.queryImplementationsAct.setStatusTip(self.trUtf8( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
218 | 'Find places where the selected method is overridden')) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
219 | self.queryImplementationsAct.setWhatsThis(self.trUtf8( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
220 | """<b>Find implementations</b>""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
221 | """<p>Find places where the selected method is overridden.</p>""" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
222 | )) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
223 | if self.__newStyle: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
224 | self.queryImplementationsAct.triggered[()].connect( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
225 | self.__queryImplementations) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
226 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
227 | self.connect(self.queryImplementationsAct, SIGNAL('triggered()'), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
228 | self.__queryImplementations) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
229 | self.actions.append(self.queryImplementationsAct) |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | ##################################################### |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | ## Various actions |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | ##################################################### |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | self.refactoringEditConfigAct = E5Action(self.trUtf8('Configure Rope'), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | self.trUtf8('&Configure Rope'), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | 0, 0, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | self,'refactoring_edit_config') |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | self.refactoringEditConfigAct.setStatusTip(self.trUtf8( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | 'Open the rope configuration file')) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | self.refactoringEditConfigAct.setWhatsThis(self.trUtf8( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | """<b>Configure Rope</b>""" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | """<p>Opens the rope configuration file in an editor.</p>""" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
244 | )) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | if self.__newStyle: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | self.refactoringEditConfigAct.triggered[()].connect( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | self.__editConfig) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | else: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | self.connect(self.refactoringEditConfigAct, SIGNAL('triggered()'), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | self.__editConfig) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | self.actions.append(self.refactoringEditConfigAct) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | self.refactoringHelpAct = E5Action(self.trUtf8('Rope help'), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | self.trUtf8('Rope &Help'), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | 0, 0, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | self,'refactoring_help') |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | self.refactoringHelpAct.setStatusTip(self.trUtf8( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | 'Show help about the rope refactorings')) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
259 | self.refactoringHelpAct.setWhatsThis(self.trUtf8( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | """<b>Rope help</b>""" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | """<p>Show some help text about the rope refactorings.</p>""" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | )) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
263 | if self.__newStyle: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | self.refactoringHelpAct.triggered[()].connect( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | self.__showRopeHelp) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | else: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | self.connect(self.refactoringHelpAct, SIGNAL('triggered()'), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | self.__showRopeHelp) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | self.actions.append(self.refactoringHelpAct) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | for act in self.actions: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | act.setEnabled(False) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | def initMenu(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | Public slot to initialize the refactoring menu. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | @return the menu generated (QMenu) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | menu = QMenu(self.trUtf8('&Refactoring'), self.__ui) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
281 | menu.setTearOffEnabled(True) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | act = menu.addAction('rope', self.__ropeInfo) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | font = act.font() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | font.setBold(True) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
286 | act.setFont(font) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | menu.addSeparator() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
288 | |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
289 | smenu = menu.addMenu(self.trUtf8("&Query")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
290 | smenu.addAction(self.queryReferencesAct) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
291 | smenu.addAction(self.queryDefinitionAct) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
292 | smenu.addAction(self.queryImplementationsAct) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
293 | |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
294 | smenu = menu.addMenu(self.trUtf8("&Refactoring")) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
295 | if self.__newStyle: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
296 | smenu.aboutToShow.connect(self.__showRefactoringMenu) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
297 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
298 | self.connect(smenu, SIGNAL("aboutToShow()"), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
299 | self.__showRefactoringMenu) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
300 | smenu.addAction(self.refactoringRenameAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
301 | smenu.addAction(self.refactoringRenameLocalAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
302 | smenu.addAction(self.refactoringChangeOccurrencesAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
303 | smenu.addSeparator() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
304 | smenu.addAction(self.refactoringRenameModuleAct) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
305 | smenu.addSeparator() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
306 | |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
307 | menu.addSeparator() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
308 | menu.addAction(self.refactoringEditConfigAct) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
309 | menu.addAction(self.refactoringHelpAct) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
310 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
311 | self.__mainMenu = menu |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
312 | return menu |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
313 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
314 | ################################################################## |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | ## slots below implement general functionality |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | ################################################################## |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | def __ropeInfo(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | Private slot to show some info about rope. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | E5MessageBox.about(self.__ui, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | self.trUtf8("About rope"), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | self.trUtf8("{0}\nVersion {1}\n\n{2}".format( |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | rope.INFO, rope.VERSION, rope.COPYRIGHT))) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
326 | |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
327 | def __canUndo(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
328 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
329 | Private slot to check, if there are changes to be undone. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
330 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
331 | @return flag indicating, that undoable changes are available (boolean) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
332 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
333 | return self.__project is not None and \ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
334 | len(self.__project.history.undo_list) > 0 |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
335 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
336 | def __canRedo(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
337 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
338 | Private slot to check, if there are changes to be redone. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
339 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
340 | @return flag indicating, that redoable changes are available (boolean) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
341 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
342 | return self.__project is not None and \ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
343 | len(self.__project.history.redo_list) > 0 |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
344 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
345 | def __getFileUndoList(self, resource): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
346 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
347 | Private slot to get a list of undoable changes. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
348 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
349 | @param resource file resource to filter against |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
350 | (rope.base.resources.File) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
351 | @return list of change objects (list of rope.base.change.Change) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
352 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
353 | undoList = [] |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
354 | for change in self.__project.history.undo_list: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
355 | if resource in change.get_changed_resources(): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
356 | undoList.append(change) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
357 | return undoList |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
358 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
359 | def __getFileRedoList(self, resource): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
360 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
361 | Private slot to get a list of redoable changes. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
362 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
363 | @param resource file resource to filter against |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
364 | (rope.base.resources.File) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
365 | @return list of change objects (list of rope.base.change.Change) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
366 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
367 | redoList = [] |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
368 | for change in self.__project.history.redo_list: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
369 | if resource in change.get_changed_resources(): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
370 | redoList.append(change) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
371 | return redoList |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
372 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
373 | def __canUndoFile(self, resource): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
374 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
375 | Private slot to check, if there are undoable changes for a resource. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
376 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
377 | @param resource file resource to check against |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
378 | (rope.base.resources.File) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
379 | @return flag indicating, that undoable changes are available (boolean) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
380 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
381 | return self.__canUndo() and len(self.__getFileUndoList(resource)) > 0 |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
382 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
383 | def __canRedoFile(self, resource): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
384 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
385 | Private slot to check, if there are redoable changes for a resource. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
386 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
387 | @param resource file resource to check against |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
388 | (rope.base.resources.File) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
389 | @return flag indicating, that redoable changes are available (boolean) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
390 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
391 | return self.__canRedo() and len(self.__getFileRedoList(resource)) > 0 |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
392 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
393 | def __showRefactoringMenu(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
394 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
395 | Private slot called before the refactoring menu is shown. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
396 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
397 | # TODO: enable these once undo/redo has been implemented |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
398 | ## self.refactoringUndoAct.setEnabled(self.__canUndo()) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
399 | ## self.refactoringRedoAct.setEnabled(self.__canRedo()) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
400 | |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
401 | def handleRopeError(self, err, title, handle=None): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
402 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
403 | Public slot to handle a rope error. |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
404 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
405 | @param err rope exception object (Exception) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
406 | @param title title to be displayed (string) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
407 | @param handle reference to a taskhandle (ProgressHandle) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
408 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
409 | if handle is not None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
410 | handle.reset() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
411 | if str(type(err)).split()[-1][1:-2].split('.')[-1] == \ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
412 | 'ModuleSyntaxError': |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
413 | res = E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
414 | self.trUtf8("Rope error: {0}").format(str(err)), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
415 | QMessageBox.Ok | QMessageBox.Open) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
416 | if res == QMessageBox.Open: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
417 | e5App().getObject("ViewManager").openSourceFile( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
418 | os.path.join(self.__e4project.getProjectPath(), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
419 | err.filename), |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
420 | err.lineno) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
421 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
422 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
423 | self.trUtf8("Rope error: {0}").format(str(err))) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
424 | |
3
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
425 | ################################################################## |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
426 | ## slots below implement the various refactorings |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
427 | ################################################################## |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
428 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
429 | ##################################################### |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
430 | ## Rename refactorings |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
431 | ##################################################### |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
432 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
433 | def __rename(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
434 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
435 | Private slot to handle the Rename action. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
436 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
437 | self.__doRename(self.trUtf8('Rename')) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
438 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
439 | def __renameLocal(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
440 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
441 | Private slot to handle the Local Rename action. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
442 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
443 | self.__doRename(self.trUtf8('Local Rename'), isLocal=True) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
444 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
445 | def __renameModule(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
446 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
447 | Private slot to handle the Rename Current Module action. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
448 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
449 | self.__doRename(self.trUtf8('Rename Current Module'), |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
450 | renameModule=True) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
451 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
452 | def __doRename(self, title, isLocal=False, renameModule=False): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
453 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
454 | Private method to perform the various renaming refactorings. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
455 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
456 | @param title title of the refactoring (string) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
457 | @param isLocal flag indicating to restrict refactoring to |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
458 | the local file (boolean) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
459 | @param renameModule flag indicating a module rename refactoring |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
460 | (boolean) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
461 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
462 | aw = e5App().getObject("ViewManager").activeWindow() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
463 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
464 | if aw is None: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
465 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
466 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
467 | if not renameModule and not aw.hasSelectedText(): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
468 | # no selection available |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
469 | E5MessageBox.warning(self.__ui, title, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
470 | self.trUtf8("Highlight the declaration you want to rename" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
471 | " and try again.")) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
472 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
473 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
474 | if isLocal: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
475 | if not self.confirmBufferIsSaved(aw): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
476 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
477 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
478 | if not self.confirmAllBuffersSaved(): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
479 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
480 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
481 | filename = aw.getFileName() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
482 | if renameModule: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
483 | offset = None |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
484 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
485 | line, index, line1, index1 = aw.getSelection() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
486 | if line != line1: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
487 | # selection span more than one line |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
488 | E5MessageBox.warning(self.__ui, title, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
489 | self.trUtf8("The selection must not extend beyond" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
490 | " one line.")) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
491 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
492 | index = int(index + (index1 - index) / 2) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
493 | # keep it inside the object |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
494 | offset = aw.positionFromLineIndex(line, index) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
495 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
496 | resource = rope.base.libutils.path_to_resource( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
497 | self.__project, filename) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
498 | try: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
499 | renamer = rope.refactor.rename.Rename( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
500 | self.__project, resource, offset) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
501 | except Exception as err: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
502 | self.handleRopeError(err, title) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
503 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
504 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
505 | if isLocal: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
506 | localResource = resource |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
507 | else: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
508 | localResource = None |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
509 | self.dlg = RenameDialog(self, title, renamer, resource=localResource, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
510 | parent=self.__ui) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
511 | self.dlg.show() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
512 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
513 | def __changeOccurrences(self): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
514 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
515 | Private slot to perform the Change Occurrences refactoring. |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
516 | """ |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
517 | aw = e5App().getObject("ViewManager").activeWindow() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
518 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
519 | if aw is None: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
520 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
521 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
522 | title = self.trUtf8("Change Occurrences") |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
523 | if not aw.hasSelectedText(): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
524 | # no selection available |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
525 | E5MessageBox.warning(self.__ui, title, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
526 | self.trUtf8("Highlight an occurrence to be changed" |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
527 | " and try again.")) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
528 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
529 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
530 | if not self.confirmBufferIsSaved(aw): |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
531 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
532 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
533 | filename = aw.getFileName() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
534 | line, index, line1, index1 = aw.getSelection() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
535 | offset = aw.positionFromLineIndex(line, index) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
536 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
537 | resource = rope.base.libutils.path_to_resource( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
538 | self.__project, filename) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
539 | try: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
540 | renamer = rope.refactor.rename.ChangeOccurrences( |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
541 | self.__project, resource, offset) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
542 | except Exception as err: |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
543 | self.handleRopeError(err, title) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
544 | return |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
545 | |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
546 | self.dlg = ChangeOccurrencesDialog(self, title, renamer, |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
547 | parent=self.__ui) |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
548 | self.dlg.show() |
3be1b4662b48
Added the 'rename' refactorings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2
diff
changeset
|
549 | |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
550 | ##################################################### |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
551 | ## Find actions |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
552 | ##################################################### |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
553 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
554 | def __queryReferences(self): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
555 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
556 | Private slot to handle the Find References action. |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
557 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
558 | aw = e5App().getObject("ViewManager").activeWindow() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
559 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
560 | if aw is None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
561 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
562 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
563 | title = self.trUtf8("Find Occurrences") |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
564 | if not aw.hasSelectedText(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
565 | # no selection available |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
566 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
567 | self.trUtf8("Highlight the class, method, function or variable" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
568 | " to search for and try again.")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
569 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
570 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
571 | if not self.confirmAllBuffersSaved(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
572 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
573 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
574 | filename = aw.getFileName() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
575 | line, index, line1, index1 = aw.getSelection() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
576 | offset = aw.positionFromLineIndex(line, index) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
577 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
578 | resource = rope.base.libutils.path_to_resource( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
579 | self.__project, filename) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
580 | handle = ProgressHandle(title, True, self.__ui) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
581 | handle.show() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
582 | QApplication.processEvents() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
583 | try: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
584 | occurrences = rope.contrib.findit.find_occurrences( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
585 | self.__project, resource, offset, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
586 | unsure = True, in_hierarchy = True, task_handle = handle) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
587 | except Exception as err: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
588 | self.handleRopeError(err, title, handle) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
589 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
590 | handle.reset() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
591 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
592 | if occurrences: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
593 | self.dlg = MatchesDialog(self.__ui, True) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
594 | self.dlg.show() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
595 | for occurrence in occurrences: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
596 | self.dlg.addEntry(occurrence.resource, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
597 | occurrence.lineno, occurrence.unsure) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
598 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
599 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
600 | self.trUtf8("No occurrences found.")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
601 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
602 | def __queryDefinition(self): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
603 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
604 | Private slot to handle the Find Definition action |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
605 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
606 | aw = e5App().getObject("ViewManager").activeWindow() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
607 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
608 | if aw is None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
609 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
610 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
611 | title = self.trUtf8("Find &Definition") |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
612 | if not aw.hasSelectedText(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
613 | # no selection available |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
614 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
615 | self.trUtf8("Highlight the class, method, function or" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
616 | " variable reference to search definition for and" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
617 | " try again.")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
618 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
619 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
620 | if not self.confirmAllBuffersSaved(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
621 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
622 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
623 | filename = aw.getFileName() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
624 | line, index, line1, index1 = aw.getSelection() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
625 | offset = aw.positionFromLineIndex(line, index) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
626 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
627 | resource = rope.base.libutils.path_to_resource( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
628 | self.__project, filename) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
629 | try: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
630 | location = rope.contrib.findit.find_definition( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
631 | self.__project, aw.text(), offset, resource) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
632 | except Exception as err: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
633 | self.handleRopeError(err, title) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
634 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
635 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
636 | if location is not None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
637 | self.dlg = MatchesDialog(self.__ui, False) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
638 | self.dlg.show() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
639 | self.dlg.addEntry(location.resource, location.lineno) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
640 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
641 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
642 | self.trUtf8("No matching definition found.")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
643 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
644 | def __queryImplementations(self): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
645 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
646 | Private slot to handle the Find Implementations action. |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
647 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
648 | aw = e5App().getObject("ViewManager").activeWindow() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
649 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
650 | if aw is None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
651 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
652 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
653 | title = self.trUtf8("Find Implementations") |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
654 | if not aw.hasSelectedText(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
655 | # no selection available |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
656 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
657 | self.trUtf8("Highlight the method to search for" |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
658 | " and try again.")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
659 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
660 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
661 | if not self.confirmAllBuffersSaved(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
662 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
663 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
664 | filename = aw.getFileName() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
665 | line, index, line1, index1 = aw.getSelection() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
666 | offset = aw.positionFromLineIndex(line, index) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
667 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
668 | resource = rope.base.libutils.path_to_resource(self.__project, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
669 | filename) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
670 | handle = ProgressHandle(title, True, self.__ui) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
671 | handle.show() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
672 | QApplication.processEvents() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
673 | try: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
674 | occurrences = rope.contrib.findit.find_implementations( |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
675 | self.__project, resource, offset, task_handle = handle) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
676 | except Exception as err: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
677 | self.handleRopeError(err, title, handle) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
678 | return |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
679 | handle.reset() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
680 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
681 | if occurrences: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
682 | self.dlg = MatchesDialog(self.__ui, True) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
683 | self.dlg.show() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
684 | for occurrence in occurrences: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
685 | self.dlg.addEntry(occurrence.resource, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
686 | occurrence.lineno, occurrence.unsure) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
687 | else: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
688 | E5MessageBox.warning(self.__ui, title, |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
689 | self.trUtf8("No occurrences found.")) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
690 | |
1
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
691 | ##################################################### |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
692 | ## Various actions |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
693 | ##################################################### |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
694 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
695 | def __editConfig(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
696 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
697 | Private slot to open the rope configuration file in an editor. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
698 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
699 | ropedir = self.__project.ropefolder |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
700 | configfile = "" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
701 | if ropedir is not None: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
702 | configfile = os.path.join(ropedir.real_path, "config.py") |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
703 | if os.path.exists(configfile): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
704 | self.__editor = MiniEditor(configfile) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
705 | self.__editor.show() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
706 | if self.__newStyle: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
707 | self.__editor.editorSaved.connect(self.__configChanged) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
708 | else: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
709 | self.connect(self.__editor, SIGNAL("editorSaved"), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
710 | self.__configChanged) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
711 | else: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
712 | E5MessageBox.critical(self.__ui, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
713 | self.trUtf8("Configure Rope"), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
714 | self.trUtf8("""The Rope configuration file '{0}' does""" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
715 | """ not exist.""").format(configfile)) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
716 | else: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
717 | E5MessageBox.critical(self.__ui, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
718 | self.trUtf8("Configure Rope"), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
719 | self.trUtf8("""The Rope admin directory does not exist.""")) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
720 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
721 | def __showRopeHelp(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
722 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
723 | Private slot to show help about the refactorings offered by Rope. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
724 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
725 | if self.__helpDialog is None: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
726 | helpfile = os.path.join(os.path.dirname(__file__), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
727 | "rope", "docs", "overview.txt") |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
728 | self.__helpDialog = \ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
729 | HelpDialog(self.trUtf8("Help about rope refactorings"), |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
730 | helpfile) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
731 | self.__helpDialog.show() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
732 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
733 | ################################################################## |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
734 | ## methods below are private utility methods |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
735 | ################################################################## |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
736 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
737 | def __ropeConfigFile(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
738 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
739 | Private method to get the name of the rope configuration file. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
740 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
741 | @return name of the rope configuration file (string) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
742 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
743 | configfile = None |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
744 | if self.__project is not None: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
745 | ropedir = self.__project.ropefolder |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
746 | if ropedir is not None: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
747 | configfile = os.path.join(ropedir.real_path, "config.py") |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
748 | if not os.path.exists(configfile): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
749 | configfile = None |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
750 | return configfile |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
751 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
752 | def __configChanged(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
753 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
754 | Private slot called, when the rope config file has changed. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
755 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
756 | self.__project.close() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
757 | self.__project = rope.base.project.Project(self.__projectpath, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
758 | fscommands = self.__fsCommands) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
759 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
760 | def __defaultConfig(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
761 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
762 | Private slot to return the contents of rope's default configuration. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
763 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
764 | @return string containing the source of rope's default |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
765 | configuration (string) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
766 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
767 | if self.__project is not None: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
768 | return self.__project._default_config() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
769 | else: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
770 | return "" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
771 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
772 | ################################################################## |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
773 | ## methods below are public utility methods |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
774 | ################################################################## |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
775 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
776 | def getActions(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
777 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
778 | Public method to get a list of all actions. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
779 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
780 | @return list of all actions (list of E5Action) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
781 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
782 | return self.actions[:] |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
783 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
784 | def projectOpened(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
785 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
786 | Public slot to handle the projectOpened signal. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
787 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
788 | if self.__projectopen: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
789 | self.projectClosed() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
790 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
791 | self.__projectopen = True |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
792 | self.__projectpath = self.__e5project.getProjectPath() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
793 | self.__projectLanguage = self.__e5project.getProjectLanguage() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
794 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
795 | if self.__projectLanguage in ["Python3"]: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
796 | self.__project = rope.base.project.Project(self.__projectpath, |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
797 | fscommands = self.__fsCommands) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
798 | for act in self.actions: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
799 | act.setEnabled(True) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
800 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
801 | def projectClosed(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
802 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
803 | Public slot to handle the projectClosed signal. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
804 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
805 | for act in self.actions: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
806 | act.setEnabled(False) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
807 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
808 | if self.__project is not None: |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
809 | self.__project.close() |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
810 | self.__project = None |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
811 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
812 | self.__projectopen = False |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
813 | self.__projectpath = '' |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
814 | self.__projectLanguage = "" |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
815 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
816 | def getProject(self): |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
817 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
818 | Public method to get a reference to the rope project object. |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
819 | |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
820 | @return reference to the rope project object (RopeProject) |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
821 | """ |
9f687137a929
Started implementing the basic functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
822 | return self.__project |
2
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
823 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
824 | def confirmBufferIsSaved(self, editor): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
825 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
826 | Public method to check, if an editor has unsaved changes. |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
827 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
828 | @param editor reference to the editor to be checked |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
829 | @return flag indicating, that the editor doesn't contain |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
830 | unsaved edits (boolean) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
831 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
832 | res = editor.checkDirty() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
833 | self.__project.validate(self.__project.root) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
834 | return res |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
835 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
836 | def confirmAllBuffersSaved(self): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
837 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
838 | Private method to check, if any editor has unsaved changes. |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
839 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
840 | @return flag indicating, that no editor contains unsaved edits |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
841 | (boolean) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
842 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
843 | res = e5App().getObject("ViewManager").checkAllDirty() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
844 | self.__project.validate(self.__project.root) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
845 | return res |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
846 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
847 | def refreshEditors(self, changes): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
848 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
849 | Public method to refresh modified editors. |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
850 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
851 | @param reference to the Changes object (rope.base.change.ChangeSet) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
852 | """ |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
853 | vm = e5App().getObject("ViewManager") |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
854 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
855 | changedFiles = [] |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
856 | for resource in changes.get_changed_resources(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
857 | if not resource.is_folder(): |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
858 | changedFiles.append(resource.real_path) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
859 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
860 | openFiles = [Utilities.normcasepath(f) for f in vm.getOpenFilenames()] |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
861 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
862 | for file in changedFiles: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
863 | normfile = Utilities.normcasepath(file) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
864 | if normfile in openFiles: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
865 | editor = vm.getEditor(normfile)[1] |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
866 | editor.refresh() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
867 | |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
868 | aw = vm.activeWindow() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
869 | if aw is not None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
870 | filename = aw.getFileName() |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
871 | if filename is not None: |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
872 | vm.openSourceFile(filename, aw.getCursorPosition()[0] + 1) |
fc72a5b922a6
Added the rope query functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
873 |