1 /******************************************************************************* 2 * Copyright (c) 2005, 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 12 package org.eclipse.ui.internal.menus; 13 14 /** 15 * <p> 16 * The path describing a location. A path can be composed of different types of 17 * elements, but is characterized by being a container. It is generally possible 18 * to create a child path based on a location element. 19 * </p> 20 * <p> 21 * Clients must not implement or extend. 22 * </p> 23 * <p> 24 * <strong>PROVISIONAL</strong>. This class or interface has been added as 25 * part of a work in progress. There is a guarantee neither that this API will 26 * work nor that it will remain the same. Please do not use this API without 27 * consulting with the Platform/UI team. 28 * </p> 29 * <p> 30 * This class will eventually exist in <code>org.eclipse.jface.menus</code>. 31 * </p> 32 * 33 * @since 3.2 34 * @see org.eclipse.ui.internal.menus.SBar 35 * @see org.eclipse.ui.internal.menus.SPart 36 * @see org.eclipse.ui.internal.menus.SPopup 37 */ 38 public interface LocationElement { 39 40 /** 41 * Creates a child of this path. This child will have the given id appended. 42 * 43 * @param id 44 * The id of the element to append to this path; must not be 45 * <code>null</code>. 46 * @return The child location element; never <code>null</code>. 47 */ 48 LocationElement createChild(String id); 49 } 50