Search in sources :

Example 1 with Change

use of org.eclipse.che.ide.ext.java.shared.dto.Change in project che by eclipse.

the class DocumentChangeListener method documentChanged.

@Override
public void documentChanged(DocumentEvent event) {
    final DtoFactory dtoFactory = DtoFactory.getInstance();
    Change dto = dtoFactory.createDto(Change.class);
    dto.setLength(event.getLength());
    dto.setOffset(event.getOffset());
    dto.setText(event.getText());
    changes.add(dto);
}
Also used : DtoFactory(org.eclipse.che.dto.server.DtoFactory) Change(org.eclipse.che.ide.ext.java.shared.dto.Change)

Example 2 with Change

use of org.eclipse.che.ide.ext.java.shared.dto.Change in project che by eclipse.

the class OrganizeImportsPresenter method onFinishButtonClicked.

/** {@inheritDoc} */
@Override
public void onFinishButtonClicked() {
    selected.put(page, view.getSelectedImport());
    ConflictImportDTO result = dtoFactory.createDto(ConflictImportDTO.class).withTypeMatches(new ArrayList<>(selected.values()));
    if (file instanceof Resource) {
        final Optional<Project> project = ((Resource) file).getRelatedProject();
        javaCodeAssistClient.applyChosenImports(project.get().getLocation().toString(), JavaUtil.resolveFQN(file), result).then(new Operation<List<Change>>() {

            @Override
            public void apply(List<Change> result) throws OperationException {
                applyChanges(((TextEditor) editor).getDocument(), result);
                view.hide();
                ((TextEditor) editor).setFocus();
            }
        }).catchError(new Operation<PromiseError>() {

            @Override
            public void apply(PromiseError arg) throws OperationException {
                String title = locale.failedToProcessOrganizeImports();
                String message = arg.getMessage();
                notificationManager.notify(title, message, FAIL, FLOAT_MODE);
            }
        });
    }
}
Also used : Resource(org.eclipse.che.ide.api.resources.Resource) Operation(org.eclipse.che.api.promises.client.Operation) Change(org.eclipse.che.ide.ext.java.shared.dto.Change) Project(org.eclipse.che.ide.api.resources.Project) ConflictImportDTO(org.eclipse.che.ide.ext.java.shared.dto.ConflictImportDTO) TextEditor(org.eclipse.che.ide.api.editor.texteditor.TextEditor) PromiseError(org.eclipse.che.api.promises.client.PromiseError) ArrayList(java.util.ArrayList) List(java.util.List) OperationException(org.eclipse.che.api.promises.client.OperationException)

Example 3 with Change

use of org.eclipse.che.ide.ext.java.shared.dto.Change in project che by eclipse.

the class JavaFormatter method applyChanges.

private void applyChanges(List<Change> changes, Document document) {
    HandlesUndoRedo undoRedo = null;
    EditorPartPresenter editorPartPresenter = editorAgent.getActiveEditor();
    if (editorPartPresenter instanceof UndoableEditor) {
        undoRedo = ((UndoableEditor) editorPartPresenter).getUndoRedo();
    }
    try {
        if (undoRedo != null) {
            undoRedo.beginCompoundChange();
        }
        for (Change change : changes) {
            document.replace(change.getOffset(), change.getLength(), change.getText());
        }
    } catch (final Exception e) {
        Log.error(getClass(), e);
    } finally {
        if (undoRedo != null) {
            undoRedo.endCompoundChange();
        }
    }
}
Also used : HandlesUndoRedo(org.eclipse.che.ide.api.editor.texteditor.HandlesUndoRedo) UndoableEditor(org.eclipse.che.ide.api.editor.texteditor.UndoableEditor) EditorPartPresenter(org.eclipse.che.ide.api.editor.EditorPartPresenter) Change(org.eclipse.che.ide.ext.java.shared.dto.Change) OperationException(org.eclipse.che.api.promises.client.OperationException)

Aggregations

Change (org.eclipse.che.ide.ext.java.shared.dto.Change)3 OperationException (org.eclipse.che.api.promises.client.OperationException)2 ArrayList (java.util.ArrayList)1 List (java.util.List)1 Operation (org.eclipse.che.api.promises.client.Operation)1 PromiseError (org.eclipse.che.api.promises.client.PromiseError)1 DtoFactory (org.eclipse.che.dto.server.DtoFactory)1 EditorPartPresenter (org.eclipse.che.ide.api.editor.EditorPartPresenter)1 HandlesUndoRedo (org.eclipse.che.ide.api.editor.texteditor.HandlesUndoRedo)1 TextEditor (org.eclipse.che.ide.api.editor.texteditor.TextEditor)1 UndoableEditor (org.eclipse.che.ide.api.editor.texteditor.UndoableEditor)1 Project (org.eclipse.che.ide.api.resources.Project)1 Resource (org.eclipse.che.ide.api.resources.Resource)1 ConflictImportDTO (org.eclipse.che.ide.ext.java.shared.dto.ConflictImportDTO)1