public abstract class FigureController extends java.lang.Object implements Controller
This figure controller needs to know when the figure it controls was added or
removed. Since draw2d does not provide a "addRemovedListener" for IFigure but
a IFigure#removeNotify() that can be overridden it is the
responsibility of the implementing controller to call start() and
stop() when the implementing IFigure#addNotify() and
IFigure#removeNotify() get called. So create your figure like the
following snippet shows:
IFigure figure = new PolylineShape () {
public void addNotify () {
super.addNotify ();
start (); // FigureController.start ();
}
public void removeNotify () {
stop (); // FigureController.stop ();
super.removeNotify ();
}
};
| Modifier and Type | Class and Description |
|---|---|
class |
FigureController.ClickHandlerImpl |
static class |
FigureController.SWTCursors |
| Modifier and Type | Field and Description |
|---|---|
protected ResourceManager |
manager |
| Constructor and Description |
|---|
FigureController(SymbolController controller,
ResourceManager manager) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
applyCommon(Figure figure) |
protected org.eclipse.draw2d.geometry.Dimension |
create(Dimension dimension) |
protected Color |
createColor(RGB rgb) |
protected org.eclipse.swt.graphics.Cursor |
getCursor(java.lang.String cursor) |
IFigure |
getFigure()
Return the figure that should be added to the parent
|
Dimension |
getPreferredSize() |
protected abstract IFigure |
getPropertyFigure()
Get the figure that is used for controlling the properties of this
controller.
|
protected void |
handleOnClick(MouseEvent me) |
protected void |
handleOnDoubleClick(MouseEvent me) |
protected Border |
makeBorder(java.lang.String border)
Create a new border
|
protected org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler |
makeColorHandler(java.lang.String color,
org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorApplier applier) |
protected java.util.Map<java.lang.String,java.lang.String> |
parseBorderArguments(java.lang.String singleArgumentName,
java.lang.String border) |
void |
setBackgroundColor(java.lang.String color) |
void |
setBorder(java.lang.String border) |
protected void |
setColor(java.lang.Object key,
org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler colorHandler) |
void |
setCursor(java.lang.String cursor) |
void |
setForegroundColor(java.lang.String color) |
void |
setHeight(double height) |
abstract void |
setOpaque(java.lang.Boolean flag) |
protected void |
setOpaque(java.lang.Boolean flag,
boolean defaultValue) |
void |
setPreferredHeight(double value) |
void |
setPreferredSize(double width,
double height) |
void |
setPreferredSize(org.eclipse.draw2d.geometry.Dimension size) |
void |
setPreferredWidth(double value) |
void |
setSize(double width,
double height) |
void |
setSize(org.eclipse.draw2d.geometry.Dimension size) |
void |
setToolTip(java.lang.String string) |
void |
setVisible(boolean flag) |
void |
setWidth(double width) |
void |
start() |
void |
stop() |
public FigureController(SymbolController controller, ResourceManager manager)
protected abstract IFigure getPropertyFigure()
The figure returned is by default the same as the getFigure().
But in some cases it might be necessary to return a different figure.
public IFigure getFigure()
ControllergetFigure in interface Controllerprotected void applyCommon(Figure figure)
public void setToolTip(java.lang.String string)
public void setCursor(java.lang.String cursor)
protected org.eclipse.swt.graphics.Cursor getCursor(java.lang.String cursor)
protected void handleOnDoubleClick(MouseEvent me)
protected void handleOnClick(MouseEvent me)
public void setPreferredSize(double width,
double height)
public void setPreferredSize(org.eclipse.draw2d.geometry.Dimension size)
public void setSize(org.eclipse.draw2d.geometry.Dimension size)
public void setSize(double width,
double height)
public void setWidth(double width)
public void setHeight(double height)
public Dimension getPreferredSize()
public void setPreferredWidth(double value)
public void setPreferredHeight(double value)
public void setBorder(java.lang.String border)
public void setBackgroundColor(java.lang.String color)
public void setForegroundColor(java.lang.String color)
protected void setColor(java.lang.Object key,
org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler colorHandler)
public void start()
public void stop()
public void setVisible(boolean flag)
public abstract void setOpaque(java.lang.Boolean flag)
protected void setOpaque(java.lang.Boolean flag,
boolean defaultValue)
protected Border makeBorder(java.lang.String border)
3 GROUP:x COMPOUND:[GROUP:2|GROUP:3]
border - protected java.util.Map<java.lang.String,java.lang.String> parseBorderArguments(java.lang.String singleArgumentName,
java.lang.String border)
protected org.eclipse.draw2d.geometry.Dimension create(Dimension dimension)
protected org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler makeColorHandler(java.lang.String color,
org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorApplier applier)
protected Color createColor(RGB rgb)
Copyright (c) IBH SYSTEMS GmbH and others 2010, 2013.
All rights reserved. This program and the accompanying materials
are made available under the terms of the
Eclipse Public License v1.0