public SearchResults getAffectedNodes(final RefactoringContext refactoringContext) { SearchResults searchResults = new SearchResults(); for (SNode selNode : ListSequence.fromList(refactoringContext.getSelectedNodes())) { searchResults.addAll( FindUtils.getSearchResults( new EmptyProgressMonitor(), selNode, GlobalScope.getInstance(), "jetbrains.mps.lang.structure.findUsages.NodeAndDescendantsUsages_Finder")); } return searchResults; }
public void refactor(final RefactoringContext refactoringContext) { List<SNode> nodes = refactoringContext.getSelectedNodes(); SModel targetModel = null; List<SNode> movedNodes = null; if (((Object) refactoringContext.getParameter("target")) instanceof SModel) { targetModel = ((SModel) ((Object) refactoringContext.getParameter("target"))); movedNodes = refactoringContext.moveNodesToModel(nodes, targetModel); } if (((Object) refactoringContext.getParameter("target")) instanceof SNode) { SNode targetNode = (SNode) ((Object) refactoringContext.getParameter("target")); movedNodes = refactoringContext.moveNodesToNode( nodes, ListSequence.fromList(nodes).first().getRoleInParent(), targetNode); targetModel = SNodeOperations.getModel(targetNode); } if (targetModel != null) { refactoringContext.setParameter("nodeToOpen", ListSequence.fromList(movedNodes).first()); } }