diff options
author | Dariusz Luksza | 2011-05-20 19:53:22 +0000 |
---|---|---|
committer | Dariusz Luksza | 2011-05-20 19:54:14 +0000 |
commit | 32e5479b2e16dc3da212503f56a8efce08ba5d25 (patch) | |
tree | d6384b2b73ce2c6b1c8fa1f28256bf497ff90df6 /org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions | |
parent | 2a690282841dc51b54e09f37aac2ac9688af945c (diff) | |
download | egit-32e5479b2e16dc3da212503f56a8efce08ba5d25.tar.gz egit-32e5479b2e16dc3da212503f56a8efce08ba5d25.tar.xz egit-32e5479b2e16dc3da212503f56a8efce08ba5d25.zip |
Add rebase button into git toolbar
Also improves formatting of toolbar section in plugin.xml
Change-Id: I2cb10a5933f4fca730f617816b597b4889707a30
Signed-off-by: Dariusz Luksza <dariusz@luksza.org>
Diffstat (limited to 'org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions')
3 files changed, 62 insertions, 0 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/ActionCommands.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/ActionCommands.java index 4987f6dc8c..60385ec901 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/ActionCommands.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/ActionCommands.java @@ -95,6 +95,9 @@ public class ActionCommands { /** "Reset" action command id */ public static final String RESET_ACTION = "org.eclipse.egit.ui.team.Reset"; //$NON-NLS-1$ + /** "Rebase" action command id */ + public static final String REBASE_ACTION = "org.eclipse.egit.ui.team.Rebase"; //$NON-NLS-1$ + /** "Show History" action command id */ public static final String SHOW_HISTORY = "org.eclipse.egit.ui.team.ShowHistory"; //$NON-NLS-1$ @@ -121,4 +124,5 @@ public class ActionCommands { /** "Merge Tool" action command id */ public static final String MERGE_TOOL_ACTION = "org.eclipse.egit.ui.team.MergeTool"; //$NON-NLS-1$ + } diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/RebaseAction.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/RebaseAction.java new file mode 100644 index 0000000000..c34be48bdf --- /dev/null +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/RebaseAction.java @@ -0,0 +1,27 @@ +/******************************************************************************* + * Copyright (C) 2011, Dariusz Luksza <dariusz@luksza.org> + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package org.eclipse.egit.ui.internal.actions; + +import org.eclipse.egit.core.op.RebaseOperation; + +/** + * An action to rebase the current branch on top of selected one. + * + * @see RebaseOperation + */ +public class RebaseAction extends RepositoryAction { + + /** + * + */ + public RebaseAction() { + super(ActionCommands.REBASE_ACTION, new RebaseActionHandler()); + } + +} diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/RebaseActionHandler.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/RebaseActionHandler.java new file mode 100644 index 0000000000..eaa1f83e21 --- /dev/null +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/actions/RebaseActionHandler.java @@ -0,0 +1,31 @@ +/******************************************************************************* + * Copyright (C) 2011, Dariusz Luksza <dariusz@luksza.org> + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + *******************************************************************************/ +package org.eclipse.egit.ui.internal.actions; + +import org.eclipse.core.commands.ExecutionEvent; +import org.eclipse.core.commands.ExecutionException; +import org.eclipse.egit.core.op.RebaseOperation; +import org.eclipse.egit.ui.internal.commands.shared.RebaseCurrentRefCommand; + +/** + * An action to rebase the current branch on top of given branch. + * + * @see RebaseOperation + */ +public class RebaseActionHandler extends RepositoryActionHandler { + + public Object execute(ExecutionEvent event) throws ExecutionException { + return new RebaseCurrentRefCommand().execute(event); + } + + @Override + public boolean isEnabled() { + return getRepository() != null && containsHead(); + } +} |