use of org.erlide.wrangler.refactoring.selection.IErlSelection in project erlide_eclipse by erlang.
the class MergeLetRefactoring method checkInitialConditions.
@Override
public RefactoringStatus checkInitialConditions(final IProgressMonitor pm) throws CoreException, OperationCanceledException {
final IErlSelection selection = GlobalParameters.getWranglerSelection();
/*
* if (!((selection instanceof IErlMemberSelection) && (selection
* .getKind() == SelectionKind.FUNCTION || selection.getKind() ==
* SelectionKind.FUNCTION_CLAUSE))) return RefactoringStatus
* .createFatalErrorStatus("Please select an expression!");
*/
final IErlMemberSelection sel = (IErlMemberSelection) selection;
ExpressionPosRpcMessage m = new ExpressionPosRpcMessage();
m = (ExpressionPosRpcMessage) WranglerBackendManager.getRefactoringBackend().callWithParser(m, "merge_let_eclipse", "sxi", sel.getFilePath(), sel.getSearchPath(), GlobalParameters.getTabWidth());
if (m.isSuccessful()) {
positions = m.getPositionDefinitions(sel.getDocument());
selectedPositions = new ArrayList<>();
} else {
return RefactoringStatus.createFatalErrorStatus(m.getMessageString());
}
return new RefactoringStatus();
}
use of org.erlide.wrangler.refactoring.selection.IErlSelection in project erlide_eclipse by erlang.
the class RenameFunctionRefactoring method getWorkflowController.
@Override
public RefactoringWorkflowController getWorkflowController(final Shell shell) {
return new RefactoringWorkflowController(shell) {
@Override
public void doRefactoring() {
final IErlSelection sel = GlobalParameters.getWranglerSelection();
IRefactoringRpcMessage message = run(sel);
if (message.isSuccessful()) {
changedFiles = message.getRefactoringChangeset();
status = new RefactoringStatus();
} else if (message.getRefactoringState() == RefactoringState.WARNING) {
if (ask("Warning", message.getMessageString())) {
message = runAlternative(sel);
if (message.getRefactoringState() == RefactoringState.OK) {
status = new RefactoringStatus();
} else {
status = RefactoringStatus.createFatalErrorStatus(message.getMessageString());
}
} else {
stop();
}
} else {
status = RefactoringStatus.createFatalErrorStatus(message.getMessageString());
}
}
};
}
Aggregations