Anonymous avatar Anonymous committed f05a181

restructure: added resources option support

Comments (0)

Files changed (1)

ropemacs/refactor.py

     key = 'x'
     confs = {'pattern': dialog.Data('Restructuring pattern: '),
              'goal': dialog.Data('Restructuring goal: ')}
-    optionals = {'args': dialog.Data('Arguments: '),
-                 'imports': dialog.Data('Imports: ')}
+    optionals = {
+        'args': dialog.Data('Arguments: '),
+        'imports': dialog.Data('Imports: '),
+        'resources': dialog.Data('Files to apply this restructuring: ')}
 
     def _calculate_changes(self, values, task_handle):
         args = {}
                 args[key.strip()] = value.strip()
         imports = [line.strip()
                    for line in values.get('imports', '').split('\n')]
+        resources = _resources(self.project, values.get('resources', None))
         restructuring = rope.refactor.restructure.Restructure(
             self.project, values['pattern'], values['goal'],
             args=args, imports=imports)
-        return restructuring.get_changes(task_handle=task_handle)
+        return restructuring.get_changes(resources=resources,
+                                         task_handle=task_handle)
 
 
 class Move(Refactoring):
     return name
 
 def _resources(project, text):
-    if text is None:
+    if text is None or text.strip() == '':
         return None
     result = []
     for line in text.splitlines():
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.