📄 abstracteditoractionbarcontributor.java
字号:
/*******************************************************************************
* $Header: /cvsroot/EOS6/work_dir/niegy/com.primeton.studio.gef.ui/src/com/primeton/studio/gef/ui/action/AbstractEditorActionBarContributor.java,v 1.2 2006/12/11 04:04:00 niegy Exp $
* $Revision: 1.2 $
* $Date: 2006/12/11 04:04:00 $
*
*==============================================================================
*
* Copyright (c) 2001-2006 Primeton Technologies, Ltd.
* All rights reserved.
*
* Created on 2006-9-27
*******************************************************************************/
package com.primeton.studio.gef.ui.action;
import org.eclipse.draw2d.PositionConstants;
import org.eclipse.gef.ui.actions.ActionBarContributor;
import org.eclipse.gef.ui.actions.AlignmentRetargetAction;
import org.eclipse.gef.ui.actions.CopyRetargetAction;
import org.eclipse.gef.ui.actions.DeleteRetargetAction;
import org.eclipse.gef.ui.actions.GEFActionConstants;
import org.eclipse.gef.ui.actions.MatchHeightRetargetAction;
import org.eclipse.gef.ui.actions.MatchWidthRetargetAction;
import org.eclipse.gef.ui.actions.PasteRetargetAction;
import org.eclipse.gef.ui.actions.RedoRetargetAction;
import org.eclipse.gef.ui.actions.UndoRetargetAction;
import org.eclipse.gef.ui.actions.ZoomComboContributionItem;
import org.eclipse.gef.ui.actions.ZoomInRetargetAction;
import org.eclipse.gef.ui.actions.ZoomOutRetargetAction;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.jface.action.MenuManager;
import org.eclipse.jface.action.Separator;
import org.eclipse.ui.IWorkbenchActionConstants;
import org.eclipse.ui.actions.ActionFactory;
import org.eclipse.ui.actions.LabelRetargetAction;
/**
* 编辑器工具栏类
*
* @author niegy (mailto:niegy@primeton.com)
*/
/*
* 修改历史
* $Log: AbstractEditorActionBarContributor.java,v $
* Revision 1.2 2006/12/11 04:04:00 niegy
* 重构代码
*
* Revision 1.1 2006/11/17 03:15:13 niegy
* create
*
*/
abstract public class AbstractEditorActionBarContributor extends ActionBarContributor {
IToolBarManager toolBarManager = null;
IMenuManager menuManager = null;
/**
* Create actions managed by this contributor.
*
* @see org.eclipse.gef.ui.actions.ActionBarContributor#buildActions()
*/
protected void buildActions() {
addRetargetAction(new UndoRetargetAction());
addRetargetAction(new RedoRetargetAction());
addRetargetAction(new DeleteRetargetAction());
addRetargetAction(new CutRetargetAction());
addRetargetAction(new CopyRetargetAction());
addRetargetAction(new PasteRetargetAction());
addRetargetAction(new ZoomInRetargetAction());
addRetargetAction(new ZoomOutRetargetAction());
addRetargetAction(new LabelRetargetAction(
GEFActionConstants.TOGGLE_GRID_VISIBILITY, "Toggle Grid",
IAction.AS_CHECK_BOX));
addRetargetAction(new LabelRetargetAction(
GEFActionConstants.TOGGLE_RULER_VISIBILITY, "Toggle Ruler",
IAction.AS_CHECK_BOX));
addRetargetAction(new LabelRetargetAction(
GEFActionConstants.TOGGLE_SNAP_TO_GEOMETRY, "Toggle Snap",
IAction.AS_CHECK_BOX));
addRetargetAction(new AlignmentRetargetAction(PositionConstants.LEFT));
addRetargetAction(new AlignmentRetargetAction(PositionConstants.CENTER));
addRetargetAction(new AlignmentRetargetAction(PositionConstants.RIGHT));
addRetargetAction(new AlignmentRetargetAction(PositionConstants.TOP));
addRetargetAction(new AlignmentRetargetAction(PositionConstants.MIDDLE));
addRetargetAction(new AlignmentRetargetAction(PositionConstants.BOTTOM));
addRetargetAction(new MatchWidthRetargetAction());
addRetargetAction(new MatchHeightRetargetAction());
addRetargetAction(new SelectAllRetargetAction());
}
/**
* Add actions to the given toolbar.
*
* @see org.eclipse.ui.part.EditorActionBarContributor#contributeToToolBar(org.eclipse.jface.action.IToolBarManager)
*/
public void contributeToToolBar(IToolBarManager toolBarManager) {
toolBarManager.add(getAction(ActionFactory.UNDO.getId()));
toolBarManager.add(getAction(ActionFactory.REDO.getId()));
toolBarManager.add(getAction(ActionFactory.DELETE.getId()));
toolBarManager.add(getAction(GEFActionConstants.ZOOM_IN));
toolBarManager.add(getAction(GEFActionConstants.ZOOM_OUT));
toolBarManager.add(new ZoomComboContributionItem(getPage()));
toolBarManager.add(getAction(GEFActionConstants.ALIGN_LEFT));
toolBarManager.add(getAction(GEFActionConstants.ALIGN_CENTER));
toolBarManager.add(getAction(GEFActionConstants.ALIGN_RIGHT));
toolBarManager.add(getAction(GEFActionConstants.ALIGN_TOP));
toolBarManager.add(getAction(GEFActionConstants.ALIGN_MIDDLE));
toolBarManager.add(getAction(GEFActionConstants.ALIGN_BOTTOM));
toolBarManager.add(getAction(GEFActionConstants.MATCH_WIDTH));
toolBarManager.add(getAction(GEFActionConstants.MATCH_HEIGHT));
this.toolBarManager = toolBarManager;
}
/*
* (non-Javadoc)
*
* @see org.eclipse.gef.ui.actions.ActionBarContributor#declareGlobalActionKeys()
*/
protected void declareGlobalActionKeys() {
addGlobalActionKey(ActionFactory.PRINT.getId());
addGlobalActionKey(ActionFactory.SELECT_ALL.getId());
addGlobalActionKey(ActionFactory.COPY.getId());
addGlobalActionKey(ActionFactory.CUT.getId());
addGlobalActionKey(ActionFactory.PASTE.getId());
addGlobalActionKey(ActionFactory.DELETE.getId());
}
public void contributeToMenu(IMenuManager menuManager) {
IMenuManager viewMenu = new MenuManager("&View", "view");
menuManager.insertAfter(IWorkbenchActionConstants.M_EDIT, viewMenu);
viewMenu.add(getAction(GEFActionConstants.ZOOM_IN));
viewMenu.add(getAction(GEFActionConstants.ZOOM_OUT));
viewMenu.add(new Separator());
viewMenu.add(getAction(GEFActionConstants.TOGGLE_GRID_VISIBILITY));
viewMenu.add(getAction(GEFActionConstants.TOGGLE_RULER_VISIBILITY));
viewMenu.add(getAction(GEFActionConstants.TOGGLE_SNAP_TO_GEOMETRY));
this.menuManager = menuManager;
}
public void dispose() {
toolBarManager.removeAll();
menuManager.removeAll();
toolBarManager = null;
menuManager = null;
super.dispose();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -