public void init(IViewPart view) { IActionBars actionBars = view.getViewSite().getActionBars(); IToolBarManager toolBarManager = actionBars.getToolBarManager(); final UndoAction undoAction = new UndoAction(view); toolBarManager.add(undoAction); undoAction.setImageDescriptor(Activator.imageDescriptorFromPlugin(Activator.PLUGIN_ID, "icons/undo.png")); final RedoAction redoAction = new RedoAction(view); redoAction.setImageDescriptor(Activator.imageDescriptorFromPlugin(Activator.PLUGIN_ID, "icons/redo.png")); toolBarManager.add(redoAction); viewer.getEditDomain().getCommandStack().addCommandStackListener( new CommandStackListener() { @Override public void commandStackChanged(EventObject event) { undoAction.setEnabled(undoAction.isEnabled()); redoAction.setEnabled(redoAction.isEnabled()); } }); }