16 import rope.refactor.change_signature |
16 import rope.refactor.change_signature |
17 |
17 |
18 from Ui_ChangeSignatureDialog import Ui_ChangeSignatureDialog |
18 from Ui_ChangeSignatureDialog import Ui_ChangeSignatureDialog |
19 from RefactoringDialogBase import RefactoringDialogBase |
19 from RefactoringDialogBase import RefactoringDialogBase |
20 from AddParameterDialog import AddParameterDialog |
20 from AddParameterDialog import AddParameterDialog |
|
21 |
21 |
22 |
22 class ChangeSignatureDialog(RefactoringDialogBase, Ui_ChangeSignatureDialog): |
23 class ChangeSignatureDialog(RefactoringDialogBase, Ui_ChangeSignatureDialog): |
23 """ |
24 """ |
24 Class implementing the Change Signature dialog. |
25 Class implementing the Change Signature dialog. |
25 """ |
26 """ |
26 NameRole = Qt.UserRole |
27 NameRole = Qt.UserRole |
27 IsAddedRole = Qt.UserRole + 1 |
28 IsAddedRole = Qt.UserRole + 1 |
28 DefaultRole = Qt.UserRole + 2 |
29 DefaultRole = Qt.UserRole + 2 |
29 ValueRole = Qt.UserRole + 3 |
30 ValueRole = Qt.UserRole + 3 |
30 |
31 |
31 def __init__(self, refactoring, title, changer, parent=None): |
32 def __init__(self, refactoring, title, changer, parent=None): |
32 """ |
33 """ |
33 Constructor |
34 Constructor |
34 |
35 |
35 @param refactoring reference to the main refactoring object |
36 @param refactoring reference to the main refactoring object |
36 (Refactoring) |
37 (Refactoring) |
37 @param title title of the dialog (string) |
38 @param title title of the dialog (string) |
38 @param changer reference to the signature changer object |
39 @param changer reference to the signature changer object |
39 (rope.refactor.change_signature.ChangeSignature) |
40 (rope.refactor.change_signature.ChangeSignature) |
40 @param parent reference to the parent widget (QWidget) |
41 @param parent reference to the parent widget (QWidget) |
41 """ |
42 """ |
42 RefactoringDialogBase.__init__(self, refactoring, title, parent) |
43 RefactoringDialogBase.__init__(self, refactoring, title, parent) |
43 self.setupUi(self) |
44 self.setupUi(self) |
196 changers = [] |
197 changers = [] |
197 definition_info = copy.deepcopy(self.__definition_info) |
198 definition_info = copy.deepcopy(self.__definition_info) |
198 for itm in self.__to_be_removed: |
199 for itm in self.__to_be_removed: |
199 if itm.data(ChangeSignatureDialog.IsAddedRole): |
200 if itm.data(ChangeSignatureDialog.IsAddedRole): |
200 continue |
201 continue |
201 index = self.__getParameterIndex(definition_info, |
202 index = self.__getParameterIndex(definition_info, |
202 itm.data(ChangeSignatureDialog.NameRole)) |
203 itm.data(ChangeSignatureDialog.NameRole)) |
203 remover = rope.refactor.change_signature.ArgumentRemover(index) |
204 remover = rope.refactor.change_signature.ArgumentRemover(index) |
204 changers.append(remover) |
205 changers.append(remover) |
205 del definition_info[index] |
206 del definition_info[index] |
206 |
207 |
230 changers.append(rope.refactor.change_signature.ArgumentReorderer( |
231 changers.append(rope.refactor.change_signature.ArgumentReorderer( |
231 new_ordering, autodef=autodef)) |
232 new_ordering, autodef=autodef)) |
232 |
233 |
233 try: |
234 try: |
234 changes = self.__signature.get_changes( |
235 changes = self.__signature.get_changes( |
235 changers, in_hierarchy=self.hierarchyCheckBox.isChecked(), |
236 changers, in_hierarchy=self.hierarchyCheckBox.isChecked(), |
236 task_handle=handle) |
237 task_handle=handle) |
237 return changes |
238 return changes |
238 except Exception as err: |
239 except Exception as err: |
239 self._refactoring.handleRopeError(err, self._title, handle) |
240 self._refactoring.handleRopeError(err, self._title, handle) |
240 return None |
241 return None |