/*******************************************************************************
 * Copyright (c) 2016 CEA LIST.
 * 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
 *
 * Contributors:
 *     Erwan Mahe (CEA LIST) erwan.mahe@cea.fr - Initial API and implementation
 *******************************************************************************/

package org.eclipse.efm.execution.launchconfiguration;

public class HelpContextIdConstants {

	protected static final String CONTEXT_ID =
			org.eclipse.efm.modeling.doc.helpcontents.Activator.PLUGIN_ID;
			// i.e. "org.eclipse.efm.modeling.doc.helpcontents"


	public static final String sew_launch_tabgroup = CONTEXT_ID + ".sew_launch_tabgroup";

	public static final String sew_launch_Supervisor_tab = CONTEXT_ID + ".sew_launch_Supervisor_tab";

	public static final String sew_launch_Main_tab = CONTEXT_ID + ".sew_launch_Main_tab";

	public static final String sew_launch_TestGeneration_tab = CONTEXT_ID + ".sew_launch_TestGeneration_tab";

	public static final String sew_launch_Debug_tab = CONTEXT_ID + ".sew_launch_Debug_tab";

	public static final String sew_launch_Expert_tab = CONTEXT_ID + ".sew_launch_Expert_tab";

	public static final String sew_launch_Refresh_tab = CONTEXT_ID + ".sew_launch_Refresh_tab";

	public static final String sew_launch_SymbexRuntime_tab = CONTEXT_ID + ".sew_launch_SymbexRuntime_tab";

	public static final String sew_launch_Common_tab = CONTEXT_ID + ".sew_launch_Common_tab";


	public static final String sew_view_SymbexConsoleSpider = CONTEXT_ID + ".sew_view_SymbexConsoleSpider";







}

