/******************************************************************************* | |
* <copyright> | |
* | |
* Copyright (c) 2013, 2013 SAP AG. | |
* 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: | |
* SAP AG - initial API, implementation and documentation | |
* | |
* </copyright> | |
* | |
*******************************************************************************/ | |
package org.eclipse.fmc.blockdiagram.editor.algorithm.node; | |
import org.eclipse.graphiti.mm.GraphicsAlgorithmContainer; | |
import org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm; | |
import org.eclipse.graphiti.mm.pictograms.Diagram; | |
/** | |
* This is the interface for all graphical nodes. | |
* | |
* @author Heiko Witteborg | |
* | |
*/ | |
public interface GraphicsNode { | |
/** | |
* Creates a GraphicsAlgorithm in the given container with the given | |
* location and size. The graphics will be created depending on the type of | |
* node. | |
* | |
* @param diagram | |
* The diagram the graphics algorithm is added to. | |
* @param container | |
* The container of the newly created graphics algorithm | |
* (container shape or parent graphics algorithm). | |
* @param x | |
* The horizontal offset of the newly created graphics algorithm. | |
* @param y | |
* The vertical offset of the newly created graphics algorithm. | |
* @param width | |
* The width of the newly created graphics algorithm. | |
* @param height | |
* The width of the newly created graphics algorithm. | |
* @return The newly created graphics algorithm. | |
*/ | |
public GraphicsAlgorithm createGraphics(Diagram diagram, | |
GraphicsAlgorithmContainer container, int x, int y, int width, | |
int height); | |
/** | |
* Retrieves The default line width of the graphical node. | |
* | |
* @return The default line width of the graphical node. | |
*/ | |
public int getDefaultLineWidth(); | |
/** | |
* Retrieves the minimum height of the graphical node. | |
* | |
* @return The minimum height of the graphical node. | |
*/ | |
public int getMinimumHeight(); | |
/** | |
* Retrieves the minimum width of the graphical node. | |
* | |
* @return The minimum width of the graphical node. | |
*/ | |
public int getMinimumWidth(); | |
/** | |
* Retrieves the default height of the graphical node. | |
* | |
* @return The default height of the graphical node. | |
*/ | |
public int getDefaultHeight(); | |
/** | |
* Retrieves the default width of the graphical node. | |
* | |
* @return The default width of the graphical node. | |
*/ | |
public int getDefaultWidth(); | |
} |