public abstract class FigureController extends 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 |
---|---|
static class |
FigureController.SWTCursors |
Modifier and Type | Field and Description |
---|---|
protected org.eclipse.jface.resource.ResourceManager |
manager |
Constructor and Description |
---|
FigureController(SymbolController controller,
org.eclipse.jface.resource.ResourceManager manager) |
Modifier and Type | Method and Description |
---|---|
protected void |
applyCommon(Figure figure) |
protected org.eclipse.draw2d.geometry.Dimension |
create(Dimension dimension) |
protected org.eclipse.swt.graphics.Color |
createColor(org.eclipse.swt.graphics.RGB rgb) |
protected org.eclipse.swt.graphics.Cursor |
getCursor(String cursor) |
org.eclipse.draw2d.IFigure |
getFigure()
Return the figure that should be added to the parent
|
Dimension |
getPreferredSize() |
protected abstract org.eclipse.draw2d.IFigure |
getPropertyFigure()
Get the figure that is used for controlling the properties of this
controller.
|
void |
handleMouseDragged(org.eclipse.draw2d.MouseEvent me) |
void |
handleMouseEntered(org.eclipse.draw2d.MouseEvent me) |
void |
handleMouseExited(org.eclipse.draw2d.MouseEvent me) |
void |
handleMouseHover(org.eclipse.draw2d.MouseEvent me) |
void |
handleMouseMoved(org.eclipse.draw2d.MouseEvent me) |
protected void |
handleOnClick(org.eclipse.draw2d.MouseEvent me) |
protected void |
handleOnDoubleClick(org.eclipse.draw2d.MouseEvent me) |
protected org.eclipse.draw2d.Border |
makeBorder(String border)
Create a new border
|
protected org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler |
makeColorHandler(String color,
org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorApplier applier) |
protected static Map<String,String> |
parseBorderArguments(String singleArgumentName,
String border) |
void |
setBackgroundColor(String color) |
void |
setBorder(String border) |
protected void |
setColor(Object key,
org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler colorHandler) |
void |
setCursor(String cursor)
Set a cursor for the figure
The name of the cursor must be one of the FigureController.SWTCursors enum. |
void |
setForegroundColor(String color) |
void |
setHeight(double height) |
abstract void |
setOpaque(Boolean flag) |
protected void |
setOpaque(Boolean flag,
boolean defaultValue) |
void |
setPreferredHeight(double value) |
void |
setPreferredSize(org.eclipse.draw2d.geometry.Dimension size) |
void |
setPreferredSize(double width,
double height) |
void |
setPreferredWidth(double value) |
void |
setSize(org.eclipse.draw2d.geometry.Dimension size) |
void |
setSize(double width,
double height) |
void |
setToolTip(String string) |
void |
setVisible(boolean flag) |
void |
setWidth(double width) |
void |
start() |
void |
stop() |
public FigureController(SymbolController controller, org.eclipse.jface.resource.ResourceManager manager)
protected abstract org.eclipse.draw2d.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 org.eclipse.draw2d.IFigure getFigure()
Controller
getFigure
in interface Controller
protected void applyCommon(Figure figure)
public void setToolTip(String string)
public void setCursor(String cursor)
FigureController.SWTCursors
enum.cursor
- the name of the cursorprotected org.eclipse.swt.graphics.Cursor getCursor(String cursor)
protected void handleOnDoubleClick(org.eclipse.draw2d.MouseEvent me)
protected void handleOnClick(org.eclipse.draw2d.MouseEvent me)
public void handleMouseMoved(org.eclipse.draw2d.MouseEvent me)
public void handleMouseHover(org.eclipse.draw2d.MouseEvent me)
public void handleMouseExited(org.eclipse.draw2d.MouseEvent me)
public void handleMouseEntered(org.eclipse.draw2d.MouseEvent me)
public void handleMouseDragged(org.eclipse.draw2d.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(String border)
public void setBackgroundColor(String color)
public void setForegroundColor(String color)
protected void setColor(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(Boolean flag)
protected void setOpaque(Boolean flag, boolean defaultValue)
protected org.eclipse.draw2d.Border makeBorder(String border)
3 GROUP:x COMPOUND:[GROUP:2|GROUP:3]
border
- protected static Map<String,String> parseBorderArguments(String singleArgumentName, String border)
protected org.eclipse.draw2d.geometry.Dimension create(Dimension dimension)
protected org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorHandler makeColorHandler(String color, org.eclipse.scada.vi.ui.draw2d.primitives.FigureController.ColorApplier applier)
protected org.eclipse.swt.graphics.Color createColor(org.eclipse.swt.graphics.RGB rgb)
Copyright © 2016 Eclipse NeoSCADA Project. All rights reserved.