KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > nightlabs > editor2d > EditorActionBarContributor


1 /**
2  * <p> Project: com.nightlabs.editor2d </p>
3  * <p> Copyright: Copyright (c) 2004 </p>
4  * <p> Company: NightLabs GmbH (Germany) </p>
5  * <p> Creation Date: 26.10.2004 </p>
6  * <p> Author: Daniel Mazurek </p>
7 **/

8 package com.nightlabs.editor2d;
9
10 import org.eclipse.draw2d.PositionConstants;
11 import org.eclipse.gef.editparts.ZoomManager;
12 import org.eclipse.gef.internal.GEFMessages;
13 import org.eclipse.gef.ui.actions.ActionBarContributor;
14 import org.eclipse.gef.ui.actions.AlignmentRetargetAction;
15 import org.eclipse.gef.ui.actions.DeleteRetargetAction;
16 import org.eclipse.gef.ui.actions.GEFActionConstants;
17 import org.eclipse.gef.ui.actions.MatchHeightRetargetAction;
18 import org.eclipse.gef.ui.actions.MatchWidthRetargetAction;
19 import org.eclipse.gef.ui.actions.RedoRetargetAction;
20 import org.eclipse.gef.ui.actions.UndoRetargetAction;
21 import org.eclipse.gef.ui.actions.ZoomInRetargetAction;
22 import org.eclipse.gef.ui.actions.ZoomOutRetargetAction;
23 import org.eclipse.jface.action.IAction;
24 import org.eclipse.jface.action.IMenuManager;
25 import org.eclipse.jface.action.IToolBarManager;
26 import org.eclipse.jface.action.MenuManager;
27 import org.eclipse.jface.action.Separator;
28 import org.eclipse.ui.IWorkbenchActionConstants;
29 import org.eclipse.ui.actions.ActionFactory;
30 import org.eclipse.ui.actions.RetargetAction;
31
32 import com.nightlabs.editor2d.actions.ZoomAllAction;
33 import com.nightlabs.editor2d.actions.ZoomAllRetargetAction;
34 import com.nightlabs.editor2d.actions.ZoomSelectionAction;
35 import com.nightlabs.editor2d.actions.ZoomSelectionRetargetSelection;
36 import com.nightlabs.editor2d.custom.EditorZoomComboContributionItem;
37
38
39 public class EditorActionBarContributor
40 extends ActionBarContributor
41 {
42
43   /* (non-Javadoc)
44    * @see org.eclipse.gef.ui.actions.ActionBarContributor#buildActions()
45    */

46   protected void buildActions()
47   {
48     addRetargetAction(new UndoRetargetAction());
49     addRetargetAction(new RedoRetargetAction());
50     addRetargetAction(new DeleteRetargetAction());
51         
52     addRetargetAction(new AlignmentRetargetAction(PositionConstants.LEFT));
53     addRetargetAction(new AlignmentRetargetAction(PositionConstants.CENTER));
54     addRetargetAction(new AlignmentRetargetAction(PositionConstants.RIGHT));
55     addRetargetAction(new AlignmentRetargetAction(PositionConstants.TOP));
56     addRetargetAction(new AlignmentRetargetAction(PositionConstants.MIDDLE));
57     addRetargetAction(new AlignmentRetargetAction(PositionConstants.BOTTOM));
58         
59     addRetargetAction(new MatchWidthRetargetAction());
60     addRetargetAction(new MatchHeightRetargetAction());
61     
62     addRetargetAction(new RetargetAction(
63             GEFActionConstants.TOGGLE_RULER_VISIBILITY,
64             GEFMessages.ToggleRulerVisibility_Label, IAction.AS_CHECK_BOX));
65     
66     addRetargetAction(new RetargetAction(
67             GEFActionConstants.TOGGLE_SNAP_TO_GEOMETRY,
68             GEFMessages.ToggleSnapToGeometry_Label, IAction.AS_CHECK_BOX));
69
70     addRetargetAction(new RetargetAction(GEFActionConstants.TOGGLE_GRID_VISIBILITY,
71             GEFMessages.ToggleGrid_Label, IAction.AS_CHECK_BOX));
72
73     addRetargetAction(new ZoomInRetargetAction());
74     addRetargetAction(new ZoomOutRetargetAction());
75     addRetargetAction(new ZoomAllRetargetAction());
76     addRetargetAction(new ZoomSelectionRetargetSelection());
77 // addRetargetAction(new DirectEditRetargetAction());
78

79   }
80
81   public static final String JavaDoc ID_VIEW_MENU = "menu view";
82   /**
83    * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(IMenuManager)
84    */

85   public void contributeToMenu(IMenuManager menubar)
86   {
87     super.contributeToMenu(menubar);
88 // IMenuManager fileMenu = (IMenuManager) menubar.find(IWorkbenchActionConstants.M_FILE);
89
MenuManager viewMenu = new MenuManager(EditorPlugin.getResourceString("menu_view"), ID_VIEW_MENU);
90     viewMenu.add(getAction(GEFActionConstants.ZOOM_IN));
91     viewMenu.add(getAction(GEFActionConstants.ZOOM_OUT));
92     viewMenu.add(new Separator());
93     viewMenu.add(getAction(GEFActionConstants.TOGGLE_RULER_VISIBILITY));
94     viewMenu.add(getAction(GEFActionConstants.TOGGLE_GRID_VISIBILITY));
95     viewMenu.add(getAction(GEFActionConstants.TOGGLE_SNAP_TO_GEOMETRY));
96     viewMenu.add(new Separator());
97     viewMenu.add(getAction(GEFActionConstants.MATCH_WIDTH));
98     viewMenu.add(getAction(GEFActionConstants.MATCH_HEIGHT));
99     menubar.insertAfter(IWorkbenchActionConstants.M_FILE, viewMenu);
100   }
101     
102   /**
103    * Add actions to the given toolbar.
104    * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToToolBar(org.eclipse.jface.action.IToolBarManager)
105    */

106   public void contributeToToolBar(IToolBarManager tbm)
107   {
108     super.contributeToToolBar(tbm);
109     tbm.add(getAction(ActionFactory.UNDO.getId()));
110     tbm.add(getAction(ActionFactory.REDO.getId()));
111             
112     tbm.add(new Separator());
113     tbm.add(getAction(GEFActionConstants.ALIGN_LEFT));
114     tbm.add(getAction(GEFActionConstants.ALIGN_CENTER));
115     tbm.add(getAction(GEFActionConstants.ALIGN_RIGHT));
116     tbm.add(new Separator());
117     tbm.add(getAction(GEFActionConstants.ALIGN_TOP));
118     tbm.add(getAction(GEFActionConstants.ALIGN_MIDDLE));
119     tbm.add(getAction(GEFActionConstants.ALIGN_BOTTOM));
120     
121     tbm.add(new Separator());
122     tbm.add(getAction(GEFActionConstants.MATCH_WIDTH));
123     tbm.add(getAction(GEFActionConstants.MATCH_HEIGHT));
124     
125     tbm.add(new Separator());
126     String JavaDoc[] zoomStrings = new String JavaDoc[] { ZoomManager.FIT_ALL,
127                                             ZoomManager.FIT_HEIGHT,
128                                             ZoomManager.FIT_WIDTH };
129         
130 // tbm.add(new ZoomComboContributionItem(getPage(), zoomStrings));
131
tbm.add(new EditorZoomComboContributionItem(getPage(), zoomStrings));
132
133     tbm.add(getAction(GEFActionConstants.ZOOM_IN));
134     tbm.add(getAction(GEFActionConstants.ZOOM_OUT));
135     
136     tbm.add(getAction(ZoomAllAction.ID));
137     tbm.add(getAction(ZoomSelectionAction.ID));
138   }
139     
140   /* (non-Javadoc)
141    * @see org.eclipse.gef.ui.actions.ActionBarContributor#declareGlobalActionKeys()
142    */

143   protected void declareGlobalActionKeys()
144   {
145     addGlobalActionKey(ActionFactory.PRINT.getId());
146     addGlobalActionKey(ActionFactory.SELECT_ALL.getId());
147     addGlobalActionKey(ActionFactory.PASTE.getId());
148     addGlobalActionKey(ActionFactory.COPY.getId());
149   }
150
151 }
152
Popular Tags