| /******************************************************************************* |
| * Licensed Materials - Property of IBM |
| * (c) Copyright IBM Corporation 2007,2009. All Rights Reserved. |
| * |
| * Note to U.S. Government Users Restricted Rights: |
| * Use, duplication or disclosure restricted by GSA ADP Schedule |
| * Contract with IBM Corp. |
| *******************************************************************************/ |
| package org.eclipse.epf.authoring.ui.actions; |
| |
| import org.eclipse.core.resources.IMarker; |
| import org.eclipse.epf.authoring.ui.AuthoringUIPlugin; |
| import org.eclipse.epf.library.edit.util.LibraryEditUtil; |
| import org.eclipse.epf.library.validation.ValidationManager; |
| import org.eclipse.jface.action.IAction; |
| import org.eclipse.jface.viewers.ISelection; |
| import org.eclipse.jface.viewers.IStructuredSelection; |
| import org.eclipse.ui.IViewActionDelegate; |
| import org.eclipse.ui.IViewPart; |
| import org.eclipse.ui.views.markers.MarkerItem; |
| |
| /** |
| * Clear all validation markers |
| * |
| * @author Weiping Lu |
| * @since 1.5.1.1 |
| * |
| */ |
| public class ClearValidationMarkersAction implements IViewActionDelegate { |
| |
| /** |
| * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart) |
| */ |
| public void init(IViewPart view) { |
| } |
| |
| /** |
| * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction) |
| */ |
| public void run(IAction action) { |
| ValidationManager mgr = (ValidationManager) LibraryEditUtil.getInstance().getValidationManager(); |
| mgr.clearAllMarkers(); |
| } |
| |
| |
| /** |
| * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection) |
| */ |
| public void selectionChanged(IAction action, ISelection selection) { |
| IStructuredSelection sel = (IStructuredSelection) selection; |
| if (sel == null) { |
| return; |
| } |
| |
| Object selObj = sel.getFirstElement(); |
| if (selObj instanceof MarkerItem) { |
| selObj = ((MarkerItem) selObj).getMarker(); |
| } |
| if (selObj instanceof IMarker) { |
| IMarker selectedMarker = (IMarker) selObj; |
| try { |
| if (ValidationManager.MARKER_ID.equals(selectedMarker.getType())) { |
| action.setEnabled(true); |
| return; |
| } |
| } catch (Exception ex) { |
| AuthoringUIPlugin.getDefault().getLogger().logError(ex); |
| } |
| } |
| |
| action.setEnabled(false); |
| } |
| |
| } |