diff --git a/org.fortiss.tooling.kernel.ui/trunk/icons/select_all.png b/org.fortiss.tooling.kernel.ui/trunk/icons/select_all.png
new file mode 100644
index 0000000000000000000000000000000000000000..998a0e590d62bd148191b79fcaee46ddc3497892
Binary files /dev/null and b/org.fortiss.tooling.kernel.ui/trunk/icons/select_all.png differ
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/ITutorialUIWhitelistProvider.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/ITutorialUIWhitelistProvider.java
index 5282acc87591bd509a27aa2a9f776247ad1404a5..e03b2af0998a2b5979c89463d87a750a096c270a 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/ITutorialUIWhitelistProvider.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/ITutorialUIWhitelistProvider.java
@@ -26,7 +26,7 @@ import org.eclipse.jface.action.IContributionItem;
  * @author hoelzl
  * @author $Author: hoelzl $
  * @version $Rev: 18709 $
- * @ConQAT.Rating YELLOW Hash: EF068A38A42C0E4AB6E94AA3D99A4FFE
+ * @ConQAT.Rating YELLOW Hash: CB12A92EE54964BB92F8DB7E446808BC
  */
 public interface ITutorialUIWhitelistProvider {
 	/** Returns whether the given element should be displayed in the navigator tree. */
@@ -44,6 +44,9 @@ public interface ITutorialUIWhitelistProvider {
 	/** Returns whether the global rename action is visible in the context menu. */
 	boolean globalRenameActionVisible();
 
+	/** Returns whether the global "select all" action is visible in the context menu. */
+	boolean globalSelectAllActionVisible();
+
 	/** Returns whether the given context menu contribution is visible. */
 	boolean contextMenuContributionVisible(EObject element, IContributionItem contribution);
 }
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUIAtomicWithWhitelistBase.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUIAtomicWithWhitelistBase.java
index e99b095398e99a01a0796a89b88d8a571a648e6c..2dabdde99b92d8b2b3726b4a2202c70b3e3f871c 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUIAtomicWithWhitelistBase.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUIAtomicWithWhitelistBase.java
@@ -29,7 +29,7 @@ import org.fortiss.tooling.kernel.ui.extension.ITutorialUIWhitelistProvider;
  * @author hoelzl
  * @author $Author: hoelzl $
  * @version $Rev: 18709 $
- * @ConQAT.Rating YELLOW Hash: E42D05ED143FC1B3FA87BD1828F67537
+ * @ConQAT.Rating YELLOW Hash: 91424573B85CF01E1577D55B445C7710
  */
 public abstract class TutorialStepUIAtomicWithWhitelistBase extends TutorialStepUIAtomicBase
 		implements ITutorialUIWhitelistProvider {
@@ -73,6 +73,12 @@ public abstract class TutorialStepUIAtomicWithWhitelistBase extends TutorialStep
 		return true;
 	}
 
+	/** {@inheritDoc} */
+	@Override
+	public boolean globalSelectAllActionVisible() {
+		return true;
+	}
+
 	/** {@inheritDoc} */
 	@Override
 	public boolean contextMenuContributionVisible(EObject element, IContributionItem contribution) {
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUICompositeWithWhitelistBase.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUICompositeWithWhitelistBase.java
index 187a331704999eac8b3a7cf54e8a0dae06ba4b19..f8f9c71d7bd8ee7b4e14570b797cc25a2b7ede4e 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUICompositeWithWhitelistBase.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/extension/base/TutorialStepUICompositeWithWhitelistBase.java
@@ -30,7 +30,7 @@ import org.fortiss.tooling.kernel.ui.extension.ITutorialUIWhitelistProvider;
  * @author hoelzl
  * @author $Author: hoelzl $
  * @version $Rev: 18709 $
- * @ConQAT.Rating YELLOW Hash: 69DF31BEA71E0C448A989D1332F27206
+ * @ConQAT.Rating YELLOW Hash: 8945A5050A267FF6017A75199FD94F05
  */
 public abstract class TutorialStepUICompositeWithWhitelistBase extends TutorialStepUICompositeBase
 		implements ITutorialUIWhitelistProvider {
@@ -76,6 +76,12 @@ public abstract class TutorialStepUICompositeWithWhitelistBase extends TutorialS
 		return true;
 	}
 
+	/** {@inheritDoc} */
+	@Override
+	public boolean globalSelectAllActionVisible() {
+		return true;
+	}
+
 	/** {@inheritDoc} */
 	@Override
 	public boolean contextMenuContributionVisible(EObject element, IContributionItem contribution) {
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ActionService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ActionService.java
index 7a10751b81658eab8ac0c830a778ceed83609d0e..b38689263a4b08dabd2edf6202cf64137b505b94 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ActionService.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ActionService.java
@@ -44,6 +44,7 @@ import org.fortiss.tooling.kernel.ui.internal.actions.DeleteAction;
 import org.fortiss.tooling.kernel.ui.internal.actions.PasteAction;
 import org.fortiss.tooling.kernel.ui.internal.actions.RedoAction;
 import org.fortiss.tooling.kernel.ui.internal.actions.RenameAction;
+import org.fortiss.tooling.kernel.ui.internal.actions.SelectAllAction;
 import org.fortiss.tooling.kernel.ui.internal.actions.UndoAction;
 import org.fortiss.tooling.kernel.ui.internal.views.NavigatorNewMenu;
 import org.fortiss.tooling.kernel.ui.service.IActionService;
@@ -55,7 +56,7 @@ import org.fortiss.tooling.kernel.ui.util.EObjectSelectionUtils;
  * @author hoelzlf
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: 2EB398C7C37EB120360B479B0A3EF898
+ * @ConQAT.Rating YELLOW Hash: 30F05BE76B211235B375C2DF267C4635
  */
 public class ActionService implements IActionService, IPersistencyServiceListener,
 		CommandStackListener, IIntrospectiveKernelService {
@@ -91,6 +92,9 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 	/** The global rename action. */
 	public RenameAction globalRenameAction;
 
+	/** The global "select all" action. */
+	public SelectAllAction globalSelectAllAction;
+
 	/** Initializes the service. */
 	public void initializeService() {
 		globalDeleteAction = new DeleteAction();
@@ -100,6 +104,7 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 		globalCutAction = new CutAction();
 		globalPasteAction = new PasteAction();
 		globalRenameAction = new RenameAction();
+		globalSelectAllAction = new SelectAllAction();
 	}
 
 	/** Starts the service. */
@@ -114,13 +119,13 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 	/** {@inheritDoc} */
 	@Override
 	public void addGlobalDefaultActionSectionToMenu(IMenuManager menuManager) {
-		addGlobalEditingActionsToMenu(menuManager, true, true, true);
+		addGlobalEditingActionsToMenu(menuManager, true, true, true, true);
 	}
 
 	/** {@inheritDoc} */
 	@Override
 	public void addGlobalEditingActionsToMenu(IMenuManager menuManager, boolean copyPaste,
-			boolean delete, boolean rename) {
+			boolean delete, boolean rename, boolean selectAll) {
 		if(copyPaste) {
 			menuManager.appendToGroup(GLOBAL_DEFAULT_MENU_SECTION_ID, globalCopyAction);
 			menuManager.appendToGroup(GLOBAL_DEFAULT_MENU_SECTION_ID, globalCutAction);
@@ -132,6 +137,10 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 		if(rename) {
 			menuManager.appendToGroup(GLOBAL_DEFAULT_MENU_SECTION_ID, globalRenameAction);
 		}
+
+		if(selectAll) {
+			menuManager.appendToGroup(GLOBAL_DEFAULT_MENU_SECTION_ID, globalSelectAllAction);
+		}
 	}
 
 	/** {@inheritDoc} */
@@ -171,6 +180,8 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 				ActionFactory.DELETE.getCommandId(), actionBars);
 		registerGlobalAction(globalRenameAction, ActionFactory.RENAME.getId(),
 				ActionFactory.RENAME.getCommandId(), actionBars);
+		registerGlobalAction(globalSelectAllAction, ActionFactory.SELECT_ALL.getId(),
+				ActionFactory.SELECT_ALL.getCommandId(), actionBars);
 	}
 
 	/** Registers the given action globally. */
@@ -189,6 +200,7 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 		globalPasteAction.refresh(targets);
 		globalDeleteAction.refresh(targets);
 		globalRenameAction.refresh(targets);
+		globalSelectAllAction.refresh(targets);
 		globalUndoAction.refresh(targets);
 		globalRedoAction.refresh(targets);
 	}
@@ -259,6 +271,12 @@ public class ActionService implements IActionService, IPersistencyServiceListene
 		globalRenameAction.run();
 	}
 
+	/** {@inheritDoc} */
+	@Override
+	public void runGlobalSelectAllAction() {
+		globalSelectAllAction.run();
+	}
+
 	/** {@inheritDoc} */
 	@Override
 	public Prototype getNewMenuContributionPrototype(IContributionItem contributionItem) {
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java
index c1455642e7515e532f36f64ee8a74ec1298396cb..9d43e2d8ba54d8db9c25c0e83c8a445aa1e214a6 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/ContextMenuService.java
@@ -55,7 +55,7 @@ import org.osgi.framework.Bundle;
  * @author hoelzl
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: 3448206DA62CB18B6BC802486F94D387
+ * @ConQAT.Rating YELLOW Hash: C750C764FE6FEC1CC10F7709200A2BC9
  */
 public class ContextMenuService implements IContextMenuService, IIntrospectiveKernelService {
 	/** The singleton service instance. */
@@ -173,7 +173,8 @@ public class ContextMenuService implements IContextMenuService, IIntrospectiveKe
 				IActionService.getInstance().addGlobalEditingActionsToMenu(menu,
 						ITutorialUIService.getInstance().globalCopyPasteActionsVisible(),
 						ITutorialUIService.getInstance().globalDeleteActionVisible(),
-						ITutorialUIService.getInstance().globalRenameActionVisible());
+						ITutorialUIService.getInstance().globalRenameActionVisible(),
+						ITutorialUIService.getInstance().globalSelectAllActionVisible());
 			}
 		}
 	}
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/TutorialUIService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/TutorialUIService.java
index 5de3dae905c219e665e4d2e2629d430fc0c6f5fe..180a6815067c62098089190b7ba3d4092dc60db1 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/TutorialUIService.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/TutorialUIService.java
@@ -59,7 +59,7 @@ import org.osgi.framework.BundleException;
  * @author hoelzl
  * @author $Author: hoelzl $
  * @version $Rev: 18709 $
- * @ConQAT.Rating RED Hash: 86CD841209EB95BE385D3201B5137A06
+ * @ConQAT.Rating YELLOW Hash: B64FCE1222C16D24B0D64C9641915E8D
  */
 public final class TutorialUIService implements ITutorialUIService, ITutorialUIWhitelistProvider,
 		IIntrospectiveKernelService {
@@ -307,6 +307,22 @@ public final class TutorialUIService implements ITutorialUIService, ITutorialUIW
 		return false;
 	}
 
+	/** {@inheritDoc} */
+	@Override
+	public boolean globalSelectAllActionVisible() {
+		TutorialStepBase step = ITutorialService.getInstance().getActiveTutorialStep();
+		while(step != null) {
+			if(step instanceof ITutorialUIWhitelistProvider) {
+				ITutorialUIWhitelistProvider p = (ITutorialUIWhitelistProvider)step;
+				if(p.globalSelectAllActionVisible()) {
+					return true;
+				}
+			}
+			step = step.getParent();
+		}
+		return false;
+	}
+
 	/** {@inheritDoc} */
 	@Override
 	public boolean contextMenuContributionVisible(EObject element, IContributionItem contribution) {
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/SelectAllAction.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/SelectAllAction.java
new file mode 100644
index 0000000000000000000000000000000000000000..efcd66d69724fe357071a55aee41b75b6898103a
--- /dev/null
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/internal/actions/SelectAllAction.java
@@ -0,0 +1,51 @@
+/*--------------------------------------------------------------------------+
+$Id$
+|                                                                          |
+| Copyright 2016 fortiss GmbH                     |
+|                                                                          |
+| Licensed under the Apache License, Version 2.0 (the "License");          |
+| you may not use this file except in compliance with the License.         |
+| You may obtain a copy of the License at                                  |
+|                                                                          |
+|    http://www.apache.org/licenses/LICENSE-2.0                            |
+|                                                                          |
+| Unless required by applicable law or agreed to in writing, software      |
+| distributed under the License is distributed on an "AS IS" BASIS,        |
+| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
+| See the License for the specific language governing permissions and      |
+| limitations under the License.                                           |
++--------------------------------------------------------------------------*/
+package org.fortiss.tooling.kernel.ui.internal.actions;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.ui.actions.ActionFactory;
+import org.fortiss.tooling.kernel.ui.ToolingKernelUIActivator;
+import org.fortiss.tooling.kernel.ui.extension.base.EObjectActionBase;
+import org.fortiss.tooling.kernel.ui.util.SelectionUtils;
+
+/**
+ * Action for selecting all elements in the currently active editor. the currently selected model
+ * element.
+ * 
+ * @author barner
+ * @author $Author$
+ * @version $Rev$
+ * @ConQAT.Rating YELLOW Hash: 703812CFF16B4B0ACFEC857D9B17CA6D
+ */
+public class SelectAllAction extends EObjectActionBase<EObject> {
+
+	/** Constructor. */
+	public SelectAllAction() {
+		super("Select all", ToolingKernelUIActivator.getImageDescriptor("icons/select_all.png"));
+		setId(ActionFactory.SELECT_ALL.getId());
+	}
+
+	/** {@inheritDoc} */
+	@Override
+	public void run() {
+		EObject target = getTarget();
+		if(target != null) {
+			SelectionUtils.setSelection(target.eContents());
+		}
+	}
+}
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/service/IActionService.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/service/IActionService.java
index e9791230cb666dc4ffdc6fa3af6455ba042ddcf3..e8ac2c534efa96b67ca15a64693b5e244cb92de5 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/service/IActionService.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/service/IActionService.java
@@ -30,7 +30,7 @@ import org.fortiss.tooling.kernel.ui.internal.ActionService;
  * @author hoelzl
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: 6296378743496C14102753053F08D77F
+ * @ConQAT.Rating YELLOW Hash: 1BDD6C00C8379F1C4661C01E865184F0
  */
 public interface IActionService {
 	/** Returns the service instance. */
@@ -59,6 +59,9 @@ public interface IActionService {
 	/** Runs the global rename action. */
 	public void runGlobalRenameAction();
 
+	/** Runs the global "select all" action. */
+	public void runGlobalSelectAllAction();
+
 	/** Registers all global actions with the given {@link IActionBars}. */
 	void registerGlobalActions(IActionBars actionBars);
 
@@ -73,13 +76,14 @@ public interface IActionService {
 	/**
 	 * Adds the global default actions to the given context menu. Currently the
 	 * default are the editing actions as provided by #
-	 * {@link IActionService#addGlobalEditingActionsToMenu(IMenuManager,boolean,boolean,boolean)}.
+	 * {@link IActionService#addGlobalEditingActionsToMenu(IMenuManager,boolean,boolean,boolean,boolean)}
+	 * .
 	 */
 	void addGlobalDefaultActionSectionToMenu(IMenuManager menuManager);
 
-	/** Adds the global editing actions to the menu (Copy, Cut, Paste, Delete, Rename). */
+	/** Adds the global editing actions to the menu (Copy, Cut, Paste, Delete, Rename, Select All). */
 	void addGlobalEditingActionsToMenu(IMenuManager menuManager, boolean copyPaste, boolean delete,
-			boolean rename);
+			boolean rename, boolean selectAll);
 
 	/** Adds the global undo/redo actions to the menu. */
 	void addGlobalUndoRedoActionsToMenu(IMenuManager menuManager);
diff --git a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/ActionUtils.java b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/ActionUtils.java
index 987b5910ad2b5df9aabe061ff57ccf82df04baa9..2b13ac8a17611cb3ab129b8b1b03e7f42319445f 100644
--- a/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/ActionUtils.java
+++ b/org.fortiss.tooling.kernel.ui/trunk/src/org/fortiss/tooling/kernel/ui/util/ActionUtils.java
@@ -28,7 +28,7 @@ import org.fortiss.tooling.kernel.ui.service.IActionService;
  * @author aravantinos
  * @author $Author$
  * @version $Rev$
- * @ConQAT.Rating YELLOW Hash: 45636C73464A38AAF743A8E9C5E13CC6
+ * @ConQAT.Rating YELLOW Hash: C77D5F99A252385BAED91752692B71CE
  */
 public class ActionUtils {
 
@@ -55,6 +55,8 @@ public class ActionUtils {
 				IActionService.getInstance().runGlobalRedoAction();
 			} else if(e.keyCode == SWT.F2) {
 				IActionService.getInstance().runGlobalRenameAction();
+			} else if((e.stateMask & SWT.CTRL) != 0 && e.keyCode == 0x61) {
+				IActionService.getInstance().runGlobalSelectAllAction();
 			}
 		}
 	}