Anonymous avatar Anonymous committed a90816f

usefunction: added usefunction refactoring

Comments (0)

Files changed (1)

ropemacs/refactor.py

 import rope.refactor.move
 import rope.refactor.rename
 import rope.refactor.restructure
+import rope.refactor.usefunction
 
 from ropemacs import dialog, lisputils
 
                                          task_handle=task_handle)
 
 
+class Restructure(Refactoring):
+    key = 'u'
+    optionals = {
+        'resources': dialog.Data('Files to apply this restructuring: ')}
+
+    def _calculate_changes(self, values, task_handle):
+        resources = _resources(self.project, values.get('resources', None))
+        user = rope.refactor.usefunction.UseFunction(
+            self.project, self.resource, self.offset)
+        return user.get_changes(resources=resources,
+                                task_handle=task_handle)
+
+
 class Move(Refactoring):
     key = 'v'
     optionals = {
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.