blob: de722991c45c04d2294e66b58058252268b29944 [file] [log] [blame]
/*********************************************************************
* Copyright (c) 2005, 2019 SAP SE
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* Contributors:
* SAP SE - initial API, implementation and documentation
* cbrand - Bug 376585 - Clean-up deprecations in Graphiti
*
* SPDX-License-Identifier: EPL-2.0
**********************************************************************/
package org.eclipse.graphiti.tb;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.graphiti.features.IFeature;
import org.eclipse.graphiti.features.context.IContext;
/**
* The Class ContextButtonEntry.
*/
public class ContextButtonEntry extends AbstractContextEntry implements IContextButtonEntry {
private List<IFeature> dragAndDropFeatures = new ArrayList<IFeature>();
private List<IContextButtonEntry> contextButtonMenuEntries = new ArrayList<IContextButtonEntry>();
/**
* Add a menu feature. Will be triggered when you click the button.
*
* @param contextButtonEntry
* the context button entry
*/
public void addContextButtonMenuEntry(IContextButtonEntry contextButtonEntry) {
this.contextButtonMenuEntries.add(contextButtonEntry);
}
/**
* Gets the context button menu entries.
*
* @return returns the menu features
*/
public List<IContextButtonEntry> getContextButtonMenuEntries() {
return this.contextButtonMenuEntries;
}
/**
* add a drag and drop feature. gets triggered when you drag from the button
* and drop on an arbitrary part of the screen
*
* @param dragAndDropFeature
* the drag and drop feature
*/
public void addDragAndDropFeature(IFeature dragAndDropFeature) {
this.dragAndDropFeatures.add(dragAndDropFeature);
}
/**
* Gets the drag and drop features.
*
* @return returns the drag and drop features
*/
public List<IFeature> getDragAndDropFeatures() {
return this.dragAndDropFeatures;
}
/**
* Creates a context button entry.
*
* @param feature
* feature that will be triggered on click
* @param context
* the context used with the feature
*/
public ContextButtonEntry(IFeature feature, IContext context) {
super(feature, context);
}
}