/** * This file is licensed under the University of Illinois/NCSA Open Source License. See LICENSE.TXT for details. */ package edu.illinois.codingtracker.operations.files; import org.eclipse.core.resources.IFile; import org.eclipse.core.runtime.CoreException; import org.eclipse.ui.texteditor.ITextEditor; import edu.illinois.codingtracker.compare.helpers.EditorHelper; import edu.illinois.codingtracker.operations.OperationSymbols; /** * * @author Stas Negara * */ public class ClosedFileOperation extends FileOperation { public ClosedFileOperation() { super(); } public ClosedFileOperation(IFile closedFile) { super(closedFile); } @Override protected char getOperationSymbol() { return OperationSymbols.FILE_CLOSED_SYMBOL; } @Override public String getDescription() { return "Closed file"; } @Override public void replay() throws CoreException { ITextEditor fileEditor= EditorHelper.getExistingEditor(resourcePath); if (fileEditor != null) { EditorHelper.closeEditorSynchronously(fileEditor); } //If the currentEditor no longer exist, reset the corresponding field. if (!EditorHelper.isExistingEditor(currentEditor)) { currentEditor= null; } } }