/** * Դ�������ƣ�JumpRefItemAction.java * �������Ȩ���������ӹɷ����޹�˾ ��Ȩ���� * ϵͳ���ƣ�JRES Studio * ģ�����ƣ�com.hundsun.ares.studio.jres.metadata.ui * ����˵����Ԫ�����û��༭��UIչ����ع��� * ����ĵ��� * ���ߣ� */ package com.hundsun.ares.studio.jres.metadata.ui.actions; import org.apache.log4j.Logger; import org.eclipse.core.resources.IMarker; import org.eclipse.core.runtime.CoreException; import org.eclipse.jface.action.Action; import org.eclipse.ui.PartInitException; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.ide.IDE; import com.hundsun.ares.studio.core.IARESResource; import com.hundsun.ares.studio.core.builder.IAresMarkers; import com.hundsun.ares.studio.jres.model.metadata.MetadataItem; /** * @author wangxh * */ public class JumpRefItemAction extends Action { IARESResource res; MetadataItem item; private Logger logger = Logger.getLogger(getClass()); public JumpRefItemAction(IARESResource res, MetadataItem item) { super(); this.item = item; this.res = res; } @Override public void run() { try { try { IMarker marker = res.getResource().createMarker(IAresMarkers.BOOK_MARKER_ID); marker.setAttribute(IMarker.LOCATION, item.eResource().getURIFragment(item)); IDE.openEditor(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(), marker); marker.delete(); } catch (PartInitException e) { logger.error(e.getMessage(), e); } catch (CoreException e) { logger.error(e.getMessage(), e); } } catch (Exception e) { e.printStackTrace(); } } }