1 /******************************************************************************* 2 * Copyright (c) 2000, 2006 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.debug.core; 12 13 /** 14 * A launch mode. The debug platform contributes launch modes 15 * for run, debug, and profile. Clients may contribute additional launch 16 * modes in plug-in XML via the <code>launchModes</code> extension point. 17 * <p> 18 * Following is an example launch mode contribution for profiling. A launch 19 * mode has an unique identifier specified by the <code>mode</code> attribute 20 * and a human readable label specified by the <code>label</code> attribute. 21 * <pre> 22 * <extension point="org.eclipse.debug.core.launchModes"> 23 * <launchMode 24 * mode="profile" 25 * label="Profile"> 26 * </launchMode> 27 * </extension> 28 * </pre> 29 * </p> 30 * <p> 31 * Clients are not intended to implement this interface. 32 * </p> 33 * @since 3.0 34 */ 35 public interface ILaunchMode { 36 37 /** 38 * Returns the unique identifier for this launch mode. 39 * 40 * @return the unique identifier for this launch mode 41 */ 42 public String getIdentifier(); 43 44 /** 45 * Returns a human readable label for this launch mode. 46 * 47 * @return a human readable label for this launch mode 48 */ 49 public String getLabel(); 50 51 /** 52 * Returns a human readable label for this launch mode when used in a 53 * cascade menu. For example, "Run As". Allows the label to be 54 * properly externalized. 55 * <p> 56 * A new attribute has been added the the launch mode extension in 3.2 57 * to specify this label. When unspecified a default label is generated 58 * by concatenation, for backwards compatibility. 59 * </p> 60 * @return human readable label for this launch mode when used in a 61 * cascade menu 62 * @since 3.2 63 */ 64 public String getLaunchAsLabel(); 65 } 66