1 /*******************************************************************************
2 * Copyright (c) 2007, 2010 Association for Decentralized Information Management
4 * All rights reserved. This program and the accompanying materials
5 * are made available under the terms of the Eclipse Public License v1.0
6 * which accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * VTT Technical Research Centre of Finland - initial API and implementation
11 *******************************************************************************/
12 package org.simantics.team.ui.handlers;
14 import org.eclipse.core.commands.AbstractHandler;
15 import org.eclipse.core.commands.ExecutionEvent;
16 import org.eclipse.core.commands.ExecutionException;
17 import org.eclipse.jface.viewers.ISelection;
18 import org.eclipse.jface.viewers.IStructuredSelection;
19 import org.eclipse.ui.handlers.HandlerUtil;
20 import org.simantics.db.common.utils.Logger;
21 import org.simantics.team.ui.Command;
23 public class UndoToSelectedRevisionHandler extends AbstractHandler {
24 public UndoToSelectedRevisionHandler() {
27 public Object execute(ExecutionEvent event) throws ExecutionException {
28 ISelection sel = HandlerUtil.getCurrentSelection(event);
29 if (sel instanceof IStructuredSelection) {
30 IStructuredSelection ss = (IStructuredSelection)sel;
32 Object o = ss.getFirstElement();
33 if (null != o && o instanceof Command)
34 ((Command)o).undoToSelectedRevision();
35 } catch (Exception e) {
36 Logger.defaultLogError(e);