This document contains the release notes for recent major releases of Sirius. See also the release notes from previous versions for details about older releases.
Target
has been added in the dialog allowing to choose layout options to override for ELK layout algorithms. It describes the element to which the option applies. The filter textfield in that dialog also applies on columns&
Name
,
Targets
and
Type
.
org.eclipse.sirius.diagram.elk.layout.extension
experimental extension-point has been added to make it possible to extend the ELK layout with pre end post operations. See the extension-point associated documentation and
org.eclipse.sirius.diagram.elk.IELKLayoutExtension
interface for more details.
org.eclipse.sirius.experimental.labelOnBorderImprovement
is set to
true
.
viewpoint.ecore
model has been added the an EMap<EJavaObject, EJavaObject>
subDiagramDecorationDescriptors
in
UIState
model element. It is used as a cache to speed up sub diagram decorations computing.
org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseMoveLeftClick(int, int, boolean, int[])
,
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.click(int, int, boolean, int[])
,
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.clickWithKeys(String, int...)
, have been added to make a mouse click with key modifiers for a multi selection for example.
RefreshHelper.registerImpactingNotification(Predicate<Notification>)
to consider a specific graphical changes. An example is the possibility to launch a refresh when the region container is collapsed or expanded.
See Trigger a Sirius refresh on specific graphical changes in the developer documentation for more details.
org.eclipse.sirius
org.eclipse.sirius.tools.api.ui.RefreshHelper.isAutoRefresh()
has been added to know if Sirius is in automatic refresh mode or in manual mode.
org.eclipse.sirius.tools.api.ui.RefreshHelper.registerImpactingNotification(Predicate<Notification>)
and
org.eclipse.sirius.tools.api.ui.RefreshHelper.unregisterImpactingNotification(Predicate<Notification>)
have been added to allow to consider some graphical modifications as requiring a refresh. By default, only semantic changes are considered as requiring a refresh.
org.eclipse.sirius.business.api.query.DRepresentationQuery.DRepresentationQuery(DRepresentation, Session)
to compute queries directly from the given session instead of computing it.
org.eclipse.sirius.diagram.ui
org.eclipse.sirius.diagram.ui.business.api.query.EditPartQuery.getDDiagram()
has been added to retrieve the
DDiagram
associated to the edit part or to one of its ancestor.
org.eclipse.sirius.diagram.ui.business.api.query.ConnectionEditPartQuery.getCenteredAnchorsAbsoluteLocation(Rectangle)
has been added in order to compute the location of the anchor of a connection centered on its target or source.
org.eclipse.sirius.diagram.ui.business.api.query.ConnectionQuery.getAbsolutePointList(RelativeBendpoints, PrecisionPoint, PrecisionPoint)
has been added to compute the absolute coordinates of the bendpoints of a connection.
org.eclipse.sirius.diagam.ui.hidePrintingOfPermissionAuthorityDecoration
system property is set to true and if there is no other printable decoration provided at the same location (South-West), the permission authority decorations displayed on diagrams are not printed nor exported in images (export as image actions).
org.eclipse.sirius
org.eclipse.sirius.business.api.query.DRepresentationDescriptorQuery.isRepresentationReachable()
and
org.eclipse.sirius.business.api.query.DRepresentationDescriptorQuery.isRepresentationValid()
have been added. The former allows to know if the
DRepresentation
can be retrieved from the
DRepresentationDescriptor.repPath
: the repPath is correctly set and the representation effectively exists. The latter returns true if the
DRepresentationDescriptor
is either dangling (
DRepresentationDescriptor.repPath
can not be found) or can not by retrieved.
org.eclipse.sirius.diagram.ui
CustomLayoutConfiguration layoutConfiguration
has been added to
org.eclipse.sirius.diagram.ui.tools.api.layout.provider.DefaultLayoutProvider
and its setter method
setLayoutConfiguration(CustomLayoutConfiguration)
. It allows any layout provider to be aware of any VSM layout configuration that should be used.
getDiagramLayoutProvider(DiagramEditPart, IAdaptable)
in package
org.eclipse.sirius.diagram.ui.tools.api.layout.provider.AbstractLayoutProvider
has been made protected to allow to provide layout provider from other mechanism than LayoutService.
org.eclipse.sirius.diagram.ui.provider.Messages.SynchronizeGMFModelCommand_label
has been removed. It has been replaced in
org.eclipse.sirius.diagram.Messages
.
org.eclipse.sirius.diagram
org.eclipse.sirius.diagram.Messages.SynchronizeGMFModelCommand_label
has been added. It replaces
org.eclipse.sirius.diagram.ui.provider.Messages.SynchronizeGMFModelCommand_label
.
org.eclipse.sirius.diagram.ui.tools.api.decoration.DecorationDescriptor.isPrintable
. This attribute is used to know if the decoration should be hidden when printing or exporting the diagram. The behavior is applied only if there is no printable decoration in its diagram element location (South, West, South-West etc).
org.eclipse.sirius.common
org.eclipse.sirius.common.tools.api.util.SiriusCopier
has been replaced by the internal class
org.eclipse.sirius.tools.internal.SiriusCopierHelper
.
SiriusCopier.Helper.copy(T)
and
SiriusCopier.Helper.copyAll(Collection<? extends T>)
have been replaced by
SiriusCopierHelper.copyWithNoUidDuplication(T)
,
SiriusCopierHelper.copyAllWithNoUidDuplication(Collection<? extends T>)
and
SiriusCopierHelper.copyAllWithNoUidDuplication(Collection<? extends EObject>, boolean, boolean, boolean)
. It provides the ability to copy an object without copying the EAttribute
IDENTIFIED_ELEMENT__UID
. For all these methods, this id is not set by the factory or during object creation, it is set during the copy using
org.eclipse.emf.ecore.util.EcoreUtil.generateUUID()
.
org.eclipse.sirius.diagram.sequence
org.eclipse.sirius.diagram.sequence.Messages.VerticalSpaceReduction_operationName
has been added. It’s key is
VerticalSpaceReduction_operationName
and its default value is
Auto-reduction of {0}
. It is used when reducing spaces in sequence diagram.
org.eclipse.sirius.diagram.ui.provider.Messages.RemoveBlankSpace_cmdName
has been added. It’s key is
RemoveBlankSpace_cmdName
and its default value is
Remove blank space
. It is used when removing spaces in sequence diagram.
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKeys(int, int, int, int, AtomicBoolean, int...)
,
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKeys(int, int, int, int, AtomicBoolean, int...)
,
org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKeys(int, int, int, int, AtomicBoolean, int...)
, have been added to make a drag an drop with more than one key modifier.
org.eclipse.sirius.tests.swtbot.support
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKeys(int, int, int, int, AtomicBoolean, int...)
,
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKeys(int, int, int, int, AtomicBoolean, int...)
and
org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKeys(int, int, int, int, AtomicBoolean, int...)
have been added and allows to do a drag and drop with any key modifier you want.
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKey(int, int, int, int, int, AtomicBoolean)
,
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKey(int, int, int, int, int, AtomicBoolean)
and
org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKey(int, int, int, int, int, AtomicBoolean)
have been marked as deprecated. The method
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusDiagramEditor.dragWithKeys(int, int, int, int, AtomicBoolean, int...)
,
org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotSiriusGefViewer.dragWithKeys(int, int, int, int, AtomicBoolean, int...)
and
org.eclipse.sirius.tests.swtbot.support.api.widget.SWTBotSiriusFigureCanvas.mouseDragWithKeys(int, int, int, int, AtomicBoolean, int...)
should be used instead.
org.eclipse.sirius.diagram
allowsVisibilityModeActivation()
in
org.eclipse.sirius.diagram.business.api.diagramtype.IDiagramDescriptionProvider
This method is used to know if the visibility mode is supported by a specific diagram description.
org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys.PREF_DISPLAY_VSM_USER_FIXED_COLOR_IN_PALETTE
has been added and can be managed in Preferences/Sirius/Sirius Diagram/Appearance/Display viewpoint colors. It allows to display, in the color palette, the user fixed color(defined in the activated viewpoints) in addition to standard colors. The color palette is available in Appearance tab of the Properties view.
PopupMenu
in diagram has been improved. It is now possible to define
Group
in
PopupMenu
. A group allows to group several actions. It appears like a separator between groups of actions. It is also possible to reuse existing menu or group.
Previously, it was possible to add new menus and actions at the end of the contextual menu:
Now, it is possible to:
org.eclipse.sirius.diagram.ui.tools.api.interpreter.StandardDiagramServices
: see
org.eclipse.sirius.diagram.ui developer visible changes for the list of services or chapter
Selection after tool execution of documentation to see how to use them.
Refer to the specifier documentation for details.
IMPORTANT Note that all plug-ins in the
Sirius Server feature (
org.eclipse.sirius.server.*
and
org.eclipse.sirius.services.*
) are still considered experimental in this version. In particular, all APIs (Java, HTTP, WebSocket) they provide should be treated as provisional even if they are exposed publicly in
*.api.*
packages. We reserve the right to modify them in incompatible ways even in future maintenance versions.
org.eclipse.sirius.tools.api.command.ui.UICallBack.askUserAndSaveMigratedSession(session)
) used to ask user if he wants to save the resources after migration and save them if necessary.
org.eclipse.sirius.business.api.session.SessionManager.openSession(sessionResourceURI, monitor, uiCallback, isDirectUserActionLoading)
). Previous version calls this new version with the value false for
isDirectUserActionLoading
parameter
org.eclipse.sirius.common.tools.api.constant.CommonPreferencesConstants.PREF_ASK_TO_SAVE_RESOURCE_AFTER_MIGRATION
org.eclipse.sirius.migrationHandler
extension point has been added. It allows to contribute migration process, mainly handle migration options.
SiriusFormatDataManagerForSemanticElements
has been moved from package
org.eclipse.sirius.diagram.ui.tools.internal.format.semantic
to
org.eclipse.sirius.diagram.ui.tools.api.format.semantic
.
checkRule
and
getMessage
of
ValidationRule
EClass have been removed from
viewpoint
metamodel. These operations were deprecated and useless since we used method of
org.eclipse.sirius.business.internal.metamodel.description.validation.operations.ValidationRuleOperations
class.
org.eclipse.sirius.ui
org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys.PREF_DISPLAY_VSM_USER_FIXED_COLOR_IN_PALETTE
has been added. Its default value is true. It allows to display, in the color palette, the user fixed color(defined in the activated viewpoints) in addition to standard colors. The color palette is available in Appearance tab of the Properties view.
org.eclipse.sirius.diagram.ui
org.eclipse.sirius.diagram.ui.tools.api.interpreter.StandardDiagramServices
:
stdGetViewsRepresentingSameEType(DSemanticDiagram, List<DSemanticDecorator>)
: Return the list of
DSemanticDecorator
representing semantic element with same EType as the current selected diagram elements.
stdGetViewsWithSameMapping(DSemanticDiagram, List<DSemanticDecorator>)
: Return the list of
DSemanticDecorator
having the same mappings as the current selected diagram elements.
stdGetViewsRepresentingSelectedType(DSemanticDiagram)
: Return the list of
DSemanticDecorator
in the current diagram representing semantic element having the EType provided by the end-user through a dialog box. This dialog box can be improved. There is currently no completion, neither validation.
stdGetViewsOfExpression(DSemanticDiagram)
: Return the list of
DSemanticDecorator
corresponding to the evaluation of an expression written by the end-user in a dialog box. This dialog box can be improved. There is currently no completion, neither validation.
isRepresentationLink()
has been added in
org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery
to know if the view is a representation link or a normal note.
isRepresentationLinkBroken()
has been added in
org.eclipse.sirius.diagram.ui.business.api.query.ViewQuery
to know, for a representation link, if it refers to a deleted representation descriptor. Invocations should be guarded by
isRepresentationLink()
.
org.eclipse.sirius.diagram.ui.tools.api.figure.ViewNodeContainerFigureDesc
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.StyledFigure
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.ITransparentFigure
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.IRoundedCorner
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.ImageFigureWithAlpha
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.anchor.ZoomDependantAnchor
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.util
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.anchor.AnchorProvider
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.util
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.ViewGradientFigureDesc
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.TransparentFigureGraphicsModifier
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.SiriusWrapLabel
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.PolygoneAndPolylineDecoraction
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.ParallelogramFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.OneLineMarginBorder
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.ODesignEllipseFigure
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.GaugeSectionFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.GaugeCompositeFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.DBorderedNodeFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.anchor.AirSlidableImageAnchor
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.util
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AlphaDropShadowBorder
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AirStyleDefaultSizeNodeFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AirNoteFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AirDefaultSizeNodeFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentRectangle
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentRectangle
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentNode
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentImage
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractTransparentEllipse
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.AbstractGeoShapePolygonFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.ui.tools.api.figure.GradientRoundedRectangle
. This parameter represents still the backgroundStyle in int format.
org.eclipse.sirius.diagram.sequence.ui
org.eclipse.sirius.diagram.sequence.ui.tool.internal.figure.HorizontalGuide
has been moved to
org.eclipse.sirius.ext.draw2d.figure
package.
org.eclipse.sirius.diagram.sequence.ui.tool.internal.figure.CombinedFragmentInvisibleResizableCompartmentFigure
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.diagram.sequence.ui.tool.internal.figure.SequenceSlidableAnchor
has been moved to
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures
package.
org.eclipse.sirius.common
PREF_ASK_TO_SAVE_RESOURCE_AFTER_MIGRATION
has been added in
CommonPreferencesConstants
. If true users will be asked to save the VSM or aird if it has been automatically migrated after a user action.
org.eclipse.sirius.common.tools.api.util.SiriusCopier
has been added to provide the ability to copy an object without copying the attribute seen as id by EMF. If this id is not set by the factory or during object creation and if its concrete expected type is
String
, it is set during the copy using
org.eclipse.emf.ecore.util.EcoreUtil.generateUUID()
.
org.eclipse.sirius.tests.swtbot.support
AbstractSiriusSwtBotGefTestCase.changeSiriusCommonPreference(String, Boolean)
has been added. It allows to change a preference defined in
oes.common
plugin.
OperationCanceledException
with a message containing the specific key word "
-RT-
" has now a specific behavior. In this case, the
OperationCanceledException
is rethrown to rollback the command if this Java service is called from an AQL expression or through the service interpreter. You can refer to
bugzilla 531487 for more details.
bot.viewByTitle
(like “Problems” or “Error Log”) may not work anymore. Use
bot.viewByPartName
instead.
org.eclipse.swtbot.swt.finder.widgets.AbstractSWTBot.contextMenu(String)
raise a
WidgetNotFoundException
instead of a
TimeoutException
.
org.eclipse.sirius.tests.swtbot.support.utils.dnd.DndUtil
has been updated to be compatible with Oxygen and Photon platforms. Some methods may not work anymore on Neon platform.
org.eclipse.sirius.ui.tools.api.actions.export.ExportAction.execute
and
org.eclipse.sirius.ui.tools.api.actions.export.ExportAction.createImageFiles
, do not open UI Dialogs anymore. It throws an
java.lang.reflect.InvocationTargetException
that wraps the real cause of the error (
org.eclipse.sirius.ui.tools.api.actions.export.SizeTooLargeException
or
java.lang.OutOfMemoryError
). Callers have to handle properly the exception.
org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService.isTooBig
, can now handle very large images that previously leads to incorrect exports.
org.eclipse.sirius.ext.jface.viewers.IToolTipProvider
is not used anymore to provide a tooltip on diagram element decorations defined in the VSM. The tooltip is defined directly with an interpreted expression on
GenericDecorationDescription
,
MappingBasedDecoration
and
SemanticBasedDecoration
.
org.eclipse.sirius.common
org.eclipse.sirius.common.tools.api.interpreter.IExpressionProposal
and its only implementation
DefaultExpressionProposal
(in the same package) have been removed. They were not used anywhere, expression completion API is actually defined in package
org.eclipse.sirius.common.tools.api.contentassist
which has its own types.
org.eclipse.sirius
org.eclipse.sirius.business.api.componentization.ViewpointRegistry.reloadAllFromPlugins()
has been added to reload, from the runtime, all the VSMs of installed plug-ins and have the effect dynamically in the runtime.
org.eclipse.sirius.business.api.componentization.ViewpointRegistryImpl()
has been moved to
org.eclipse.sirius.business.internal.componentization
package.
contribution
metamodel, which lived in package
org.eclipse.sirius.description.contribution
, has been removed. It corresponded to an experimental feature which has been abandonned long ago.
DRefreshable.refresh()
EOperation has been removed from the metamodel, along with all its implementations. Client code that needs the functionality can use either
DialectManager.refresh()
for
DRepesentations
or the new
org.eclipse.sirius.diagram.tools.api.command.view.RefreshSiriusElement.refresh(DRefreshable)
static method for diagram elements (
DRefreshable.refresh()
was a no-op for elements of other dialects).
org.eclipse.sirius.viewpointSpecificationModel
extension point has been removed. It was part of the same experimental feauture and not actually used in practice.
org.eclipse.sirius.business.api.session.danalysis.DAnalysisSessionHelper
, the method
getViewpointSelection()
has been removed. It used an internal type as argument which has also been removed.
org.eclipse.sirius.business.api.helper.SiriusResourceHelper
, the method
getCorrespondingViewpoint(Session session, URI, boolean)
has been removed. It was not used anywhere, the real one is
getCorrespondingViewpoint(Session, Viewpoint)
in the same class.
org.eclipse.sirius.business.api.dialect.DialectServices
(and all its implementations), the method
refreshEffectiveRepresentationDescription(DRepresentation, IProgressMonitor)
has been removed. It corresponded to an experimental feature which has been abandonned long ago.
ToolSection
,
ToolGroup
and
ToolInstance
model element have been added in
viewpoint
metamodel. These elements are used to represent tools available for a
DDiagram
with their visibility, enabling and filtering status.
ToolSectionInstance
are available in the
UIState
of a
DDiagram
by using the
toolSections
reference.
ToolFilterDescriptionListener
has been removed because of the new
ToolMangament
mechanism used to handle tools and layer changes.
org.eclipse.sirius.diagram
org.eclipse.sirius.diagram.tools.api.preferences.SiriusDiagramPreferencesKeys.PREF_DISPLAY_GENERIC_EDGE_CREATION_TOOL
has been added to make to possible to hide the new generic edge creation tool. See the
User-Visible Changes or the user documentation for more details.
ToolManagement
has been created to manage tool availability and status for a given
DDiagram
. It comes with the listener interface
ToolChangeListener
that can be used to be warned about tool changes.
ToolConstants
has been created to gather constants relative to tool management.
SiriusDiagramPaletteFactory#GENERIC_CONNECTION_CREATION_TOOL
and
SiriusDiagramPaletteFactory#TOOL_NOTEATTACHMENT
have been moved in
ToolConstants
ToolFilter
and
ToolFilterFromDescription
have been moved from the plugin
oes.diagram.ui
to
oes.diagram
in package
org.eclipse.sirius.diagram.tools.api.managment
org.eclipse.sirius.diagram.ui
org.eclipse.sirius.diagram.ui.tools.api.editor.tabbar.AbstractTabbarContributor.createStraightenContribution()
has been added to make accessible the creation of the Straighten To tabbar contribution item.
org.eclipse.sirius.diagram.ui.customLayoutAlgorithmProvider
extension point has been added. It allows to contribute layout algorithms that can be configured directly in the VSM. This extension point comes with the following classes as API:
org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithmProvider
,
org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithm
,
org.eclipse.sirius.diagram.ui.api.layout.EnumChoice
and
org.eclipse.sirius.diagram.ui.api.layout.LayoutOptionFactory
.
hideLayer(Layer)
,
showLayer(Layer)
,
addToolFilter(ToolFilter)
and
removeToolFilter(ToolFilter)
of
org.eclipse.sirius.diagram.ui.tools.api.graphical.edit.palette.PaletteManager
have been made deprecated. They are not used anymore. The API
ToolManagement
is now the entry point to make palette update regarding tools and layer changes.
Diagram
parameter of the methods
oes.update(Diagram)
and
oes.update(Diagram,boolean)
has been changed to
DDiagram
.
org.eclipse.sirius.ui
org.eclipse.sirius.ui.business.api.viewpoint.ViewpointSelectionDialog
has been removed.
org.eclipse.sirius.tests.junit.support
org.eclipse.sirius.tests.support.api.TestsUtil.isBeforeOxygenPlatform()
has been added to detect if the current platform corresponds to a version before Oxygen.
String
parameter has been added to the method
org.eclipse.sirius.tests.support.api.TestsUtil.setTargetPlatform()
. This new parameter corresponds to the plug-in name from where the tests are currently launched (for example
org.eclipse.sirius.tests.swtbot.Activator.PLUGIN_ID
). It avoids to build a wrong target platform containing each Sirius plug-ins twice.
org.eclipse.sirius.tests.swtbot.support
org.eclipse.sirius.tests.swtbot.support.utils.dnd.DndUtil#dragAndDrop(AbstractSWTBot<? extends Widget>, AbstractSWTBot<? extends Widget>)
has been removed. When explicit drop coordinates are not needed, use the standard SWTbot
org.eclipse.swtbot.swt.finder.widgets.AbstractSWTBot.dragAndDrop(AbstractSWTBot<? extends Widget>)
method instead.
org.eclipse.sirius
org.eclipse.sirius.business.api.query.SiriusReferenceFinder.of(EObject)
has been added to provide an easy way to get the
SiriusReferenceFinder
from an
EObject
in the Sirius
Session
.
org.eclipse.sirius.business.api.query.SiriusReferenceFinder.getReferencingSiriusElements(Collection<EObject>, SearchScope)
. The SearchScope.LOADED_REPRESENTATIONS_SCOPE scope covers the search and result scope. Then, no additional resource will be loaded using this scope.
org.eclipse.sirius.diagram.ui
PREF_SCALE_DIAGRAMS_ON_EXPORT
from
org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys
is now deprecated. User should use new preference
org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys
:
PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT
.
margin
has been added in
org.eclipse.sirius.diagram.ui.business.api.DiagramExportResult
. This attribute indicates what margin has been used to produce a white frame during diagram export. This attribute is available from the getter
getMargin()
. A new constructor is also available to pass on the margin
org.eclipse.sirius.diagram.ui.business.api.DiagramExportResult.DiagramExportResult(DDiagram, double, int, Collection<IPath>)
.
SiriusDiagramUiPreferencesKeys.PREF_SCALE_DIAGRAMS_ON_EXPORT
, you must replace this override by an override of the new preference
SiriusUIPreferencesKeys.PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT
. Example:
SiriusEditPlugin.getPlugin().getPreferenceStore().setDefault(SiriusUIPreferencesKeys.PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT.name(),0);
org.eclipse.sirius.ui
org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys
:
PREF_SCALE_LEVEL_DIAGRAMS_ON_EXPORT
. It is used to control the scaling level behavior when exporting diagrams. Refer to the JavaDoc for the details.
org.eclipse.sirius.ui.business.api.dialect.ExportFormat
has a new attribute representing the scaling level to use for diagram export. It is defined by an integer type. Refer to the JavaDoc for details on its meaning.
org.eclipse.sirius.tests.junit.support
SiriusTestCase.loadModeler(URI, EditingDomain)
allows to load the VSM at the specified URI and register all its Viewpoints in the current testcase. There is a new method,
org.eclipse.sirius.tests.support.api.SiriusTestCase.loadModeler(URI, EditingDomain, boolean)
, to allow to load the VSM at the specified URI without registering its viewpoints. It can be useful to load a VSM for an editing domain of another session than the current session of the
testcase.
org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures.SiriusDefaultSizeNodeFigure
has been added in plugin
org.eclipse.sirius.ext.gmf.runtime
. The goal of the class is to workaround a
GMF bug. So if you have created class which inherits from
org.eclipse.gmf.runtime.gef.ui.figures.DefaultSizeNodeFigure
, you must now use the new
SiriusDefaultSizeNodeFigure
instead.
uid
to all instances of type DRepresentation. This
uid
is used to reference the DRepresentation from the DRepresentationDescriptor.
DRepresentationDescriptor.repPath
has been changed to have
uid
as fragment. The corresponding version, stored in attribute version of viewpoint:DAnalysis of the aird file, is
12.1.0.201707281200.
See this document for the complete list of message keys added or removed in Sirius 5.0.
A new mode (currently experimental) is available to load representations on demand and not during session opening. This feature implies to serialize Sirius representations in separate resources. This mode can be activated by setting the system property
createLocalRepresentationInSeparateResource
at true. For more detail, see the developer documentation:
Representations lazy loading (experimental).
org.eclipse.sirius
org.eclipse.sirius.business.api.session.Session
interface to retrieve the session an arbitrary
EObject
is part of:
Optional<Session> s = Session.of(myObject);
. It returns a
java.util.Optional<Session>
so all the usual patterns apply, e.g.
Session.of(obj).ifPresent(s -> doSomething(s));
.
org.eclipse.sirius.viewpoint.DRepresentationDescriptor.isLoadedRepresentation()
has been added to know if the representation linked with this {@link DRepresentationDescriptor} is loaded. By default, all representations are held in the same resource than the DRepresentationDescriptor, in that case the method will always return true.
org.eclipse.sirius.business.api.session.danalysis.DAnalysisSession.allAnalyses()
has been added in the interface to reflect the already existing
org.eclipse.sirius.business.internal.session.danalysis.DAnalysisSessionImpl.allAnalyses()
implementation.
org.eclipse.sirius.business.api.dialect.DialectManager.getLoadedRepresentations(EObject, Session)
has been added to get all loaded representations in the given session with the given EObject as target.
org.eclipse.sirius.business.api.dialect.DialectServices.getAllLoadedRepresentations(Session)
has been added to get all loaded representations in the given session.
org.eclipse.sirius.business.api.helper.SiriusUtil.REPRESENTATIONS_FOLDER_NAME
constant has been added. This is the default folder where representations file (*.srm) are located if the system property “createLocalRepresentationInSeparateResource” is set at true.
org.eclipse.sirius.tools.api.command.ui.UICallBack.shouldDeleteRepresentation(Set<DRepresentationDescriptor>)
has been added to be called when the user interface should prompt for a choice about the representation deletion.
org.eclipse.sirius.business.api.query.SiriusReferenceFinder
and
org.eclipse.sirius.business.api.query.EObjectQuery.getSiriusReferenceFinder()
method to get it have been added. This API allows getting the DRepresentations or DRepresentationElements that reference the provided semantic object. It also allows getting the DRepresentationDescriptor which associated DRepresentation is or contains elements that reference the provided semantic object. This API will be useful for
representation lazy loading as it may, in the future, not need to load all not yet loaded representations. For now, the use of this API will load all not loaded representations.
org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentationDescriptors(EObject, Session)
has been moved to
org.eclipse.sirius.business.api.dialect.DialectManager
.
org.eclipse.sirius.business.api.dialect.DialectServices.getAllRepresentationDescriptors(Session)
has been moved to
org.eclipse.sirius.business.api.dialect.DialectManager
.
org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentationDescriptors(RepresentationDescription, Session)
has been moved to
org.eclipse.sirius.business.api.dialect.DialectManager
.
getRepresentationDescriptors(EObject, Session)
,
getAllRepresentationDescriptors(Session)
and
getRepresentationDescriptors(RepresentationDescription, Session)
have been removed from
AbstractRepresentationDialectServices
. They are implemented in
DialectManagerImpl
.
org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentations(EObject, Session)
has been moved to
org.eclipse.sirius.business.api.dialect.DialectManager
org.eclipse.sirius.business.api.dialect.DialectServices.getAllRepresentations(Session)
has been moved to
org.eclipse.sirius.business.api.dialect.DialectManager
org.eclipse.sirius.business.api.dialect.DialectServices.getRepresentations(RepresentationDescription, Session)
has been moved to
org.eclipse.sirius.business.api.dialect.DialectManager
getRepresentations(EObject, Session)
,
getAllRepresentations(Session)
and
getRepresentations(RepresentationDescription, Session)
have been removed from
AbstractRepresentationDialectServices
. They are implemented in
DialectManagerImpl
.
org.eclipse.sirius.common
org.eclipse.sirius.common.tools.api.util.LazyCrossReferencer.setEObjectToBeIgnored(Predicate<EObject>)
has been added to filter inverse references to prevent some references resolution.
org.eclipse.sirius.common.tools.api.util.WorkspaceUtil.getFilesFromWorkspace(Collection<IProject>, String)
signature has been modified in
getFilesFromWorkspace(Collection<IContainer>, String)
to be more generic.
org.eclipse.sirius.diagram
org.eclipse.sirius.diagram.business.api.query.DDiagramQuery
. This query,
getAllActivatedLayers
, returns all the activated layers (transient or not) of the given diagram. It should replace
DDiagram.getActivatedLayers
in several cases if you directly use it.
org.eclipse.sirius.diagram.ui
org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys
:
PREF_SCALE_DIAGRAMS_ON_EXPORT
,
PREF_MAXIMUM_EXPORT_BUFFER_SIZE
,
PREF_MAXIMUM_EXPORT_BUFFER_SIZE_WINDOWS
. They are used to control the auto-scaling behavior when exporting diagrams. Refer to the JavaDoc for the details.
org.eclipse.sirius.diagram.ui.tools.api.part.DiagramEditPartService
, two new methods have been added:
setAllowDownScaling(boolean)
: when auto-scaling is enabled (which is controlled by the already existing
setAutoScalingEnabled()
), this is used to control if down-scaling is allowed or not.
getScalingFactor()
: after the export has been performed, this can be used to obtain the scaling factor that was effectively used.
org.eclipse.sirius.diagram.ui.business.api.DiagramExportResult
has been added, which inherits from
ExportResult
. It is returned by the
DialectManager.exportWithResult()
methods when the representation exported is a diagram, and in addition to the information provided by
ExportResult
gives access to the scaling factor that was used when exporting the diagram.
org.eclipse.sirius.diagram.ui.tools.api.preferences.SiriusDiagramUiPreferencesKeys.PREF_SHOW_SYNCHRONIZE_STATUS_DECORATOR
has been added to say if the
synchronize status decorator must be shown or not.
checkShapesIntersect()
has been added in
org.eclipse.sirius.diagram.ui.business.api.query.ConnectionEditPartQuery
to check if source and target of the connection intersect (only intersect – not one contained in another).
org.eclipse.sirius.ext.emf.edit
org.eclipse.sirius.ext.emf.edit.EditingDomainServices
does not use
Collection
anymore as return type or parameter type in its services.
java.util.Collection
has been replaced by
java.util.List
. As mentioned in the
specifier documentation, it is recommended to use List or Set instead of Collection in java services signature.
org.eclipse.sirius.ui
org.eclipse.sirius.ui.tools.api.dialogs.AbstractExportRepresentationsAsImagesDialog
a new method
isAutoScaleDiagram()
has been added to indicate (once the dialog has been closed) if the user has requested to enable auto-scaling on diagram export.
org.eclipse.sirius.ui.tools.api.actions.export.ExportAction
, a new method
setAutoScaleDiagram(boolean)
to ask for automatic scaling of diagrams on export.
org.eclipse.sirius.ui.business.api.dialect.DialectUIServices
, two new methods
exportWithResult()
have been added. They are equivalent to the existing
export()
methods (which return
void
) except that they return an instance of the new type
org.eclipse.sirius.ui.business.api.dialect.ExportResult
. This gives access to the list of all the actual files produced by the export operation. Note that in the case of the diagram dialect,
exportWithResult()
actually returns a more specific
DiagramExportResult
with additional diagram-specific information.
org.eclipse.sirius.ui.business.api.dialect.ExportFormat
has a new attribute representing the scaling policy to use for diagram. It is defined by a new enumerated type
ExportFormat.ScalingPolicy
which can have four different values:
WORKSPACE_DEFAULT
,
AUTO_SCALING
,
NO_SCALING
,
AUTO_SCALING_IF_LARGER
. Refer to the JavaDoc for details on their meanings.
org.eclipse.sirius.ui.tools.api.wizards.CreateEMFModelWizard
is a new wizard that can be invoked to create instances of any metamodel. It will ask the end-user for a metamodel (
EPackage
), a concrete type to instanciate as root element, and finally the local path of the file to create. See the class Javadoc for sample usage. Note that the first two pages of the wizard (EPackage and root type selection) can be customized through the
org.eclipse.sirius.common.package_meta_data
extension point to provide user-oriented name and documentation for an EPackage, and to suggest specific EClasses as good root candidates.
org.eclipse.sirius.ui.tools.api.command.AbstractSWTCallback.shouldDeleteRepresentation(Set<DRepresentationDescriptor>)
default implementation has been added to prompt the confirm dialog.
org.eclipse.sirius.ui.business.api.session.SessionEditorInput.SessionEditorInput(URI, URI, String, Session)
has been added to provide the
DRepresentationDescriptor
URI to retrieve the
DRepresentation
from the
DRepresentationDescriptor.getRepresentation()
method instead of performing a direct load.
org.eclipse.sirius.ui.editor
org.eclipse.sirius.ui.editor.api.pages
. They are the following:
AbstractSessionEditorPage
,
PageProvider
,
PageUpdateCOmmand
,
PositioningKind
,
PageUpdateCommandFactory
. These classes allow to provide custom pages to session editor instances.
org.eclipse.sirius.ui.editor.sessionEditorPageProvider
has been added to allow custom page providing for session editor instances.