import java.util.Set;\r
import java.util.UUID;\r
\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
import org.eclipse.core.commands.operations.IOperationHistory;\r
import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.action.IStatusLineManager;\r
import org.eclipse.ui.IEditorInput;\r
import org.eclipse.ui.IEditorPart;\r
import org.eclipse.ui.IEditorReference;\r
import org.eclipse.ui.IPageLayout;\r
import org.eclipse.ui.IViewPart;\r
import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.ide.undo.WorkspaceUndoUtil;\r
\r
-import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;\r
import eu.etaxonomy.taxeditor.model.AbstractUtility;\r
\r
/**\r
* @version 1.0\r
*/\r
public class EditorUtil extends AbstractUtility{\r
- private static final Logger logger = Logger.getLogger(EditorUtil.class);\r
\r
private static boolean isSaving = false;\r
\r
- private static IStatusLineManager statusLineManager;\r
-\r
private static IViewPart view;\r
\r
public static boolean closeAll() {\r
\r
return editor.getPage(page);\r
}\r
- \r
- public static IOperationHistory getOperationHistory() {\r
- return TaxeditorEditorPlugin.getDefault().getWorkbench().\r
- getOperationSupport().getOperationHistory();\r
- }\r
- \r
- public static IStatus executeOperation(IUndoableOperation operation){\r
- try {\r
- IStatus status = getOperationHistory().execute(operation, getMonitor(),\r
- WorkspaceUndoUtil.getUIInfoAdapter(getShell()));\r
- String statusString = status.equals(Status.OK_STATUS) ? "completed" : "cancelled";\r
- setStatusLine(operation.getLabel() + " " + statusString + ".");\r
- return status;\r
- } catch (ExecutionException e) {\r
- logger.error("Error executing operation: " + operation.getLabel(), e);\r
- }\r
- return null;\r
- }\r
\r
public static IUndoContext getUndoContext(MultiPageTaxonEditor editor){\r
return editor.getUndoContext();\r
return IOperationHistory.GLOBAL_UNDO_CONTEXT;\r
}\r
\r
- private static IProgressMonitor getMonitor() {\r
- statusLineManager.setCancelEnabled(false);\r
- return statusLineManager.getProgressMonitor();\r
- }\r
- \r
- public static void setStatusLineManager(IStatusLineManager manager) {\r
- statusLineManager = manager;\r
- }\r
-\r
- public static void setStatusLine(String message) {\r
- statusLineManager.setMessage(message);\r
- }\r
-\r
public static void showPropertySheet() {\r
if (getActivePage() == null) {\r
return;\r