Release Notes |
This document describes the main changes that have been made to the JViews SDM module since version 5.5.
Incompatibilities
General Changes
Library Changes
New Packages
ilog.views.sdm.event.SDMEngineSelectionEvent
ilog.views.sdm.event.SDMEngineSelectionListener
ilog.views.sdm.graphic.IlvDefaultLaneGraphic
ilog.views.sdm.graphic.IlvGeneralLinkTunnelCrossings
ilog.views.sdm.graphic.IlvSimpleLink
ilog.views.sdm.interactor.IlvSDMCompositeSelectInteractor
ilog.views.sdm.model.IlvJDBCSDMModel
ilog.views.sdm.model.IlvMultipleSDMModel
ilog.views.sdm.model.IlvTableSDMModel
ilog.views.sdm.renderer.IlvBlinkingColor
ilog.views.sdm.renderer.IlvBlinkingRenderer
ilog.views.sdm.renderer.IlvCSSSDM
ilog.views.sdm.renderer.IlvCompositeRenderer
ilog.views.sdm.renderer.IlvLegendRenderer.LegendLayer
ilog.views.sdm.renderer.IlvSDMCSSFunction
ilog.views.sdm.renderer.IlvSDMFreeLinkConnector
ilog.views.sdm.util.IlvCSSJViews
ilog.views.sdm.util.IlvNotAnSDMDocumentException
ilog.views.sdm.util.IlvSDMMutableStyleSheet
ilog.views.sdm.IlvSDMEngine
ilog.views.sdm.graphic.IlvGeneralLink
ilog.views.sdm.graphic.IlvGeneralNode
ilog.views.sdm.graphic.IlvURLGraphic
ilog.views.sdm.interactor.IlvMakeSDMLinkInteractor
ilog.views.sdm.interactor.IlvMakeSDMNodeInteractor
ilog.views.sdm.model.IlvBasicSDMModel
ilog.views.sdm.model.IlvFilterSDMModel
ilog.views.sdm.renderer.IlvFilterSDMRenderer
ilog.views.sdm.renderer.IlvLegendRenderer
ilog.views.sdm.renderer.IlvRendererUtil
ilog.views.sdm.renderer.IlvSDMRenderer
ilog.views.sdm.renderer.IlvStyleSheetRenderer
ilog.views.sdm.renderer.IlvSubGraphRenderer
ilog.views.sdm.renderer.IlvSubGraphRenderer.CollapsedGraphic
ilog.views.sdm.renderer.IlvSubGraphRenderer.GraphicManagerFrame
ilog.views.sdm.renderer.graphlayout.IlvGraphLayoutRenderer
ilog.views.sdm.renderer.graphlayout.IlvGraphLayoutRenderer.ParameterSetter
ilog.views.sdm.renderer.graphlayout.IlvLabelLayoutRenderer
ilog.views.sdm.renderer.graphlayout.IlvSwimLanesRenderer
ilog.views.sdm.renderer.maps.IlvMapRenderer
ilog.views.sdm.swing.IlvSDMUndoManager
ilog.views.sdm.util.IlvSDMDropTarget
ilog.views.sdm.util.IlvXMLConnector
ilog.views.sdm.util.IlvXSLConnector
IlvStyleSheetRenderer
now resets the position of nodes
each time their graphical properties are changed. For example, if you
select a node, the rules with the :selected
pseudo-class
are applied, then the x
and y
coordinates are
read from the data model, and the node is moved accordingly. This operation
is required because some properties set in the style sheet may change
the position of the node, for example, if you change the shape of an
IlvGeneralPath
object. In JViews 5.5, the positions of nodes
were not correct in such cases. The new behavior ensures that the
positions of nodes are correct, but it may slightly change the selection
behavior of existing applications if the style for selected nodes changes
the bounding box of the node, for example if a label or a decoration is
added only for selected nodes. setIncrementalMode
of the class IlvGraphLayoutRenderer
,
which was deprecated in JViews 5.5, has been removed.setJavaColorNamesFirst
flag of the SDM engine is now
false by default. This may change some colors in existing applications. In
this case, you can either use absolute color values, or set the flag to
true.IlvStyleSheetRenderer
does not try to place nodes in
rows when no x/y properties are set in the data model. All nodes that do
not have x/y coordinates are now placed in 0,0 (unless a graph layout
algorithm is performed).IlvGeneralNode
class now uses the new IlvText
class internally to display the node's labels. This new text class provides better
performance and more accurate bounding boxes. As a side effect, the
general node labels may be displayed slightly differently: the bounding
box will usually be a bit larger, and multiline labels will be evenly
spaced according to the font's baseline. If needed, you can switch back to
the JViews 5.5 behavior (using IlvZoomableLabels
): see the
reference manual for details.IlvCSSFunction
has been renamed to IlvSDMCSSFunction
.ToolTipText
property is not supported any more in style
sheets. Use toolTipText
instead.@id
(to the object's ID) and @type
(to the object's type) in style sheets must be replaced by @__ID
and @__TYPE
respectively, to avoid clashes with possible
existing properties in the data model.ilog.views.sdm.event.SDMEngineSelectionEvent
An
SDMEngineSelectionEvent
is sent by anilog.views.sdm.IlvSDMEngine
toSDMEngineSelectionListener
objects to notify them that the set of selected objects in an SDM engine has changed.
ilog.views.sdm.event.SDMEngineSelectionListener
The
SDMEngineSelectionListener
interface is used by anilog.views.sdm.IlvSDMEngine
to notify listeners of changes in the set of selected objects.
ilog.views.sdm.graphic.IlvDefaultLaneGraphic
This is the default graphic object used to represent swimlanes.
ilog.views.sdm.graphic.IlvGeneralLinkTunnelCrossings
An
IlvGeneralLinkTunnelCrossings
is an auxiliary graphic that is used in combination with anIlvGeneralLink
.
ilog.views.sdm.graphic.IlvSimpleLink
A link between two nodes of a grapher with several points.
ilog.views.sdm.interactor.IlvSDMCompositeSelectInteractor
This subclass of the standard JViews
ilog.views.interactor.IlvSelectInteractor
handles the selection of objects that are contained inilog.views.graphic.composite.IlvCompositeGraphic
objects (instead of being contained in anilog.views.IlvGrapher
, which is the normal case).
ilog.views.sdm.model.IlvJDBCSDMModel
This class implements an SDM model that reads its contents from a database through the JDBC API.
ilog.views.sdm.model.IlvMultipleSDMModel
The class
IlvMultipleSDMModel
lets you combine several SDM models (called the "submodels") into a single one.
ilog.views.sdm.model.IlvTableSDMModel
This class is an adapter between a Swing
javax.swing.table.TableModel
and anilog.views.sdm.IlvSDMModel
.
ilog.views.sdm.renderer.IlvBlinkingColor
This class defines a blinking color and is designed to be used with the class
IlvBlinkingRenderer
.
ilog.views.sdm.renderer.IlvBlinkingRenderer
The class
IlvBlinkingRenderer
is a filtering renderer that makes the grapher objects blink.
ilog.views.sdm.renderer.IlvCSSSDM
Bridge between SDM (IlvStryleSheetRenderer) and CSS (IlvCSSSupport).
ilog.views.sdm.renderer.IlvCompositeRenderer
The class
IlvCompositeRenderer
managesIlvSDMCompositeNode
andIlvSDMCompositeLink
.
ilog.views.sdm.renderer.IlvLegendRenderer.LegendLayer
This inner class is public only so that it can be saved to IVL files.
ilog.views.sdm.renderer.IlvSDMCSSFunction
This interface defines functions in
IlvStyleSheetRenderer
, so they can be called from a style sheet.
ilog.views.sdm.renderer.IlvSDMFreeLinkConnector
This class implements a special free link connector that takes into account the link connection rectangle of a node.
ilog.views.sdm.util.IlvCSSJViews
This subclass of IlvCSSBeans provides access to JViews objects.
ilog.views.sdm.util.IlvNotAnSDMDocumentException
This exception is thrown by the
IlvXMLConnector
when an attempt is made to read an XML stream that does not contain an SDM document.
ilog.views.sdm.util.IlvSDMMutableStyleSheet
This is a mutable style sheet.
addSDMEngineSelectionListener(SDMEngineSelectionListener)
:
Adds an
ilog.views.sdm.event.SDMEngineSelectionListener
to this SDM engine.
applyStyle(Object, String, String[])
:
Applies the current style sheet(s) of this SDM engine to a bean.
applyStyle(Object, Object, String[])
:
Applies the current style sheet(s) of this SDM engine to a bean.
getSelectionPseudoClass()
:
Returns the pseudo-class used to style selected objects.
setSelectionPseudoClass(String)
:
Changes the pseudo-class used to style selected objects.
isJavaColorNamesFirst()
:
Returns true
if Java color names are to be used instead of SVG color names when there is a conflict.
setJavaColorNamesFirst(boolean)
:
Specifies whether to use Java color names or SVG color names when there is a conflict.
isLinkLayoutEnabledWhileMoving()
:
Returns true
if the automatic link layout is enabled while moving a node.
setLinkLayoutEnabledWhileMoving(boolean)
:
Enables or disables the automatic link layout while moving nodes.
isResizingAllowed()
:
Returns true
if the user is allowed to resize nodes interactively.
setResizingAllowed(boolean)
:
Allows or forbids the user to resize nodes interactively.
readXML(Reader, boolean)
:
Reads an XML description of an SDM data model from a Reader
.
readXML(Reader)
:
Reads an XML description of an SDM data model from a Reader
.
recreateObject(Object, boolean, boolean)
:
Re-creates a graphic representation of a model object.
removeSDMEngineSelectionListener(SDMEngineSelectionListener)
:
Removes an
ilog.views.sdm.event.SDMEngineSelectionListener
from this SDM engine.
scrollToObject(Object)
:
Makes sure that an object is visible in the reference view of this SDM engine.
writeXML(Writer)
:
Writes the data contained in the current data model to a Writer
.
ilog.views.sdm.graphic.IlvGeneralLink
calcBoundingBox(IlvTransformer)
:
Calculates the bounding rectangle of the link.
createCrossingGraphic(int)
:
Creates the appropriate crossing graphic.
getArrowSize(float, IlvTransformer)
:
Returns the size of the arrow for the corresponding IlvTransformer
and lineWidth
.
getBackArrowSize(float, IlvTransformer)
:
Returns the size of the backward arrow for the corresponding IlvTransformer
and lineWidth
.
getDrawingLinkPoints(IlvTransformer)
:
Returns the link points used to draw the polyline of the link.
getObject(String)
:
Returns the graphic object with that name if it exists in the bag; otherwise returns null
.
getPolylinePosition(IlvPoint[], float, double[], IlvTransformer)
:
Utility function to return the position of a point along a polyline.
getRadius()
:
Returns current radius for rounded links.
setRadius(float)
:
Sets radius for rounded link.
getShape(IlvPoint[], IlvTransformer)
:
Returns the shape of the link, according to the given intermediate points.
getSimpleShape(IlvPoint[], IlvTransformer)
:
Returns the shape of the link, according to the given intermediate points.
isCrossingEnabled()
:
Returns true
if crossings are shown on the link.
mergeCrossings(float, float, float, IlvTransformer)
:
Returns whether to merge two subsequent crossings.
roundedFromManyPoints(IlvPoint[], float, IlvTransformer)
:
Called by shapeFromPoints()
to generate a straight shape with rounded corners.
setBackOriented(boolean)
:
Sets whether the link is backward oriented.
setCrossingMode(int)
:
Sets the crossing mode of the link.
setOrthogonal(boolean)
:
Enables the orthogonal mode of the link.
shapeFromPoints(IlvPoint[], IlvTransformer)
:
Generates a shape from the given points.
ilog.views.sdm.graphic.IlvGeneralNode
isUseIlvText()
:
Returns the flag specifying whether the label of this general node is an
ilog.views.graphic.IlvText
or an
ilog.views.graphic.IlvZoomableLabel
.
setUseIlvText(boolean)
:
Specifies whether the label of the general node will be an
ilog.views.graphic.IlvText
or an
ilog.views.graphic.IlvZoomableLabel
.
isUseIlvTextDefault()
:
Returns the default value of the "use IlvText" flag.
setUseIlvTextDefault(boolean)
:
Changes the default value of the "use IlvText" flag.
ilog.views.sdm.graphic.IlvURLGraphic
setBackground(Color)
:
Sets the background color of all the objects in the graphic set.
setForeground(Color)
:
Sets the foreground color of all the objects in the graphic set.
ilog.views.sdm.interactor.IlvMakeSDMLinkInteractor
getFromObject()
:
Returns the SDM model object that will be the origin of the newly created link.
getToObject()
:
Returns the SDM model object that will be the destination of the newly created link.
ilog.views.sdm.interactor.IlvMakeSDMNodeInteractor
isAutoEditLabel()
:
Returns true
if this interactor is in "auto-edit-label" mode, that is, if it will automatically install a label editing interactor as soon as the new node is created.
setAutoEditLabel(boolean)
:
Sets the "auto-edit-label" mode of this interactor.
ilog.views.sdm.model.IlvBasicSDMModel
contains
method.
contains(Object)
:
Tests if the object is contained in this model, that is, if it has been added to the model using
addObject
and not removed from the model using
removeObject
.
ilog.views.sdm.model.IlvFilterSDMModel
adjustmentFinished(SDMModelEvent)
:
This method is called at the end of an adjustment sequence on the underlying filtered model.
dataChanged(SDMModelEvent)
:
This method is called when the contents of the underlying filtered model are changed.
linkDestinationChanged(SDMModelEvent)
:
This method is called when the destination of a link has changed in the underlying filtered model.
linkSourceChanged(SDMModelEvent)
:
This method is called when the source of a link has changed in the underlying filtered model.
objectAdded(SDMModelEvent)
:
This method is called when an object is added to the underlying filtered model.
objectRemoved(SDMModelEvent)
:
This method is called when an object is removed from the underlying filtered model.
propertyChanged(SDMPropertyChangeEvent)
:
This method is called when a property of an object of the underlying filtered model is changed.
ilog.views.sdm.renderer.IlvFilterSDMRenderer
moveResizeNodeGraphic
, which allows the
renderer to control the position and size of nodes.
moveResizeNodeGraphic(IlvSDMEngine, Object, IlvGraphic, IlvRect, int)
:
Moves the graphic to its final position
ilog.views.sdm.renderer.IlvLegendRenderer
isIncludingLegendInBBox()
:
Returns true
if the legend is to be included in the bounding rectangle of the grapher, or false
otherwise.
setIncludingLegendInBBox(boolean)
:
Specifies whether the legend should be included in the bounding rectangle of the grapher.
ilog.views.sdm.renderer.IlvRendererUtil
ilog.views.sdm.renderer.IlvSDMRenderer
moveResizeNodeGraphic
, which allows the
renderer to control the position and size of nodes.
moveResizeNodeGraphic(IlvSDMEngine, Object, IlvGraphic, IlvRect, int)
:
Moves the graphic to its final position
ilog.views.sdm.renderer.IlvStyleSheetRenderer
clear(Object)
:
Cleans up cache information associated with the given object, if any.
getInstance(IlvSDMEngine)
:
Returns the IlvStyleSheetRenderer instance that belongs to the specified SDM engine.
ilog.views.sdm.renderer.IlvSubGraphRenderer
isExpandCollapseEnabled()
:
Returns true
if the expand/collapse interaction on subgraphs is enabled.
setExpandCollapseEnabled(boolean)
:
Enables or disables the expand/collapse interaction on subgraphs.
isFrameZoomable()
:
Returns true
if the frames and the expand/collapse icons drawn around subgraphs are zoomable, or false
if they are not zoomable.
setFrameZoomable(boolean)
:
Specifies whether the frames and the expand/collapse icons drawn around subgraphs are zoomable or not.
isUpdatingPositionOnExpand()
:
Returns true
if the positions of subgraphs and their children are updated when subgraphs are expanded or collapsed.
setUpdatingPositionsOnExpand(boolean)
:
Specifies whether or not the positions of subgraphs and their children must be updated when subgraphs are expanded or collapsed.
ilog.views.sdm.renderer.IlvSubGraphRenderer.CollapsedGraphic
getObject(String)
:
Returns the graphic object with that name if it exists in the bag, otherwise returns null
.
ilog.views.sdm.renderer.IlvSubGraphRenderer.GraphicManagerFrame
getObject(String)
:
Returns the graphic object with that name if it exists in the bag, otherwise returns null
.
ilog.views.sdm.renderer.graphlayout.IlvGraphLayoutRenderer
getConstraintsURL()
:
Returns the URL of the file that specifies the layout constraints.
setConstraintsURL(URL)
:
Sets the URL that specifies the layout constraints.
isEnsureAppropriateLinks()
:
Returns true
if the renderer automatically makes sure that appropriate links and link connectors are used when needed.
setEnsureAppropriateLinks(boolean)
:
Sets whether the renderer automatically makes sure that appropriate links and link connectors are used when needed.
isGraphLayoutExceptionPassedOn()
:
Returns true
if the graph layout exception is passed on.
setGraphLayoutExceptionPassedOn(boolean)
:
Sets whether the graph layout exception is passed on.
readConstraints(Reader)
:
Reads the layout constraints.
reloadConstraintsURL()
:
Reloads the URL that specifies the layout constraints.
writeConstraints(PrintWriter)
:
Writes the layout constraints.
ilog.views.sdm.renderer.graphlayout.IlvGraphLayoutRenderer.ParameterSetter
afterSet(Object, Object)
:
This method is called after the call to the
set
method.
beforeSet(Object, Object)
:
This method is called before the call to the
set
method.
ilog.views.sdm.renderer.graphlayout.IlvLabelLayoutRenderer
isLayoutOfLinkLabelsEnabled()
:
Returns a boolean
specifying whether the layout of labels attached to the
ilog.views.sdm.graphic.IlvGeneralLink
objects or the
ilog.views.sdm.graphic.IlvSDMCompositeLink
objects of the graph is enabled.
setLayoutOfLinkLabelsEnabled(boolean)
:
Enables or disables the layout of labels attached to the
ilog.views.sdm.graphic.IlvGeneralLink
objects or to the
ilog.views.sdm.graphic.IlvSDMCompositeLink
objects of the graph.
isLayoutOfNodeLabelsEnabled()
:
Returns a boolean
specifying whether the layout of labels attached to the
ilog.views.sdm.graphic.IlvGeneralNode
objects or the
ilog.views.sdm.graphic.IlvSDMCompositeNode
objects of the graph is enabled.
setLayoutOfNodeLabelsEnabled(boolean)
:
Enables or disables the layout of labels attached to the
ilog.views.sdm.graphic.IlvGeneralNode
objects or to
ilog.views.sdm.graphic.IlvSDMCompositeNode
objects of the graph.
ilog.views.sdm.renderer.graphlayout.IlvSwimLanesRenderer
adjustSpacing(float)
:
Moves the swimlanes apart so that the spacing between swimlanes is augmented or decreased by delta
.
createSwimLane(Object, String)
:
Creates a new swimlane by adding the specified activity and setting its swimlane property to the specified value.
getSwimLaneColor(int)
:
Returns the color of a swimlane.
getSwimLaneCount()
:
Returns the number of swimlanes.
getSwimLaneLabel(int)
:
Returns the label of the specified swimlane.
setSwimLaneLabel(int, String)
:
Sets the label of the specified swimlane.
getSwimLaneWidth(int)
:
Returns the width of a swimlane.
setSwimLaneWidth(int, float)
:
Changes the width of a swimlane.
isAutoColor(int)
:
Returns true
if the color of the specified swimlane has been set explicitly through
setSwimLaneColor
, or false
if the color of the swimlane has been allocated automatically.
isEnabled()
:
Returns true
if swimlanes are enabled, or false
if swimlanes are disabled.
setEnabled(boolean)
:
Enables or disables swimlanes.
isHorizontal()
:
Returns true
if the swimlanes are horizontal, or false
if they are vertical.
moveSwimLane(IlvSDMEngine, int, boolean)
:
Shifts the position of a swimlane to the left, right, bottom or up.
ilog.views.sdm.renderer.maps.IlvMapRenderer
addLatitudeLongitudeFormat(String, boolean)
:
Registers a new format for converting strings to latitudes or longitudes.
ilog.views.sdm.swing.IlvSDMUndoManager
isEnabled()
:
Returns true
if this undo manager is enabled, that is, if it is currently recording changes in the SDM model.
setEnabled(boolean)
:
Enables or disables this undo manager.
ilog.views.sdm.util.IlvSDMDropTarget
objectDropped(Object, Object, DropTargetDropEvent)
:
This method is called during a drop, for each object that was dropped, after the object was inserted in the model and its graphic representation was moved to the drop location.
ilog.views.sdm.util.IlvXMLConnector
isCheckingRootElementTag()
:
Returns true
if this connector checks that the XML document's root element has the tag specified by
setRootElementTag
.
setCheckingRootElementTag(boolean)
:
Enables/disables the checking of the tag of the XML document's root element.
isSavingPropertyTypes()
:
Returns true
if this XML connector saves the types of properties to the XML stream.
setSavingPropertyTypes(boolean)
:
Specifies whether the types of the properties are saved to the XML stream or not.
ilog.views.sdm.util.IlvXSLConnector
clearInputParameters()
:
This method clears the parameters passed to the input transformation.
clearOutputParameters()
:
This method clears the parameters passed to the output transformation.
setInputParameter(String, Object)
:
This method allows you to pass parameters to the input transformation.
setOutputParameter(String, Object)
:
This method allows you to pass parameters to the output transformation.