org.eclipse.graphiti.ui.internal.services.impl

## Class UiLayoutService

- java.lang.Object
- - org.eclipse.graphiti.ui.internal.services.impl.UiLayoutService

All Implemented Interfaces:
  IGaLayoutService, ILayoutService, IPeLayoutService, IUiLayoutService

    public class UiLayoutService
    extends Object
    implements IUiLayoutService

### Constructor Summary

Constructors
Constructor and Description
`UiLayoutService()`

### Method Summary

All Methods Instance Methods Concrete Methods
`IDimension` `calculateSize(GraphicsAlgorithm ga)` Calculates the size of the given graphics algorithm.
`IDimension` `calculateSize(GraphicsAlgorithm ga, boolean considerLineWidth)` Calculates the size of the given graphics algorithm.
`IDimension` `calculateTextSize(AbstractText text)` Calculates the width and height of the given text in the font of the gievn text.
`IDimension` `calculateTextSize(String text, Font font)` Calculates the width and height of the given text in the given font ignoring any new line characters in the string.
`IDimension` `calculateTextSize(String text, Font font, boolean handleMultiline)` Calculates the width and height of the given text in the given font.
`ILocation` `getConnectionMidpoint(Connection c, double d)` Gets the connection midpoint.
`IRectangle` `getGaBoundsForAnchor(Anchor anchor)` Returns the bounds of the graphics algorithm, which is referenced by the anchor.
`ILocationInfo` `getLocationInfo(Shape shape, int x, int y)` Returns the location info for a specific position inside a shape.
`ILocation` `getLocationRelativeToDiagram(Anchor anchor)` Returns the location of the anchor relative to the diagram.
`ILocation` `getLocationRelativeToDiagram(Shape shape)` Returns the location of the shape relative to the diagram.
`void` `setHeight(GraphicsAlgorithm ga, int height)` Sets the height of the given graphics algorithm.
`void` `setLocation(GraphicsAlgorithm ga, int x, int y)` Sets the location of the given graphics algorithm.
`void` `setLocation(GraphicsAlgorithm ga, int x, int y, boolean avoidNegativeCoordinates)` Sets the location of the given graphics algorithm.
`void` `setLocationAndSize(GraphicsAlgorithm ga, int x, int y, int width, int height)` Sets location and size of the given graphics algorithm.
`void` `setLocationAndSize(GraphicsAlgorithm ga, int x, int y, int width, int height, boolean avoidNegativeCoordinates)` Sets location and size of the given graphics algorithm.
`void` `setSize(GraphicsAlgorithm ga, int width, int height)` Sets the size of the given graphics algorithm.
`void` `setWidth(GraphicsAlgorithm ga, int width)` Sets the width of the given graphics algorithm.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### UiLayoutService

    public UiLayoutService()

### Method Detail

#### getConnectionMidpoint

    public ILocation getConnectionMidpoint(Connection c,
                                           double d)

Description copied from interface: `IPeLayoutService`
Gets the connection midpoint.

Specified by:
  `getConnectionMidpoint` in interface `IPeLayoutService`
Parameters:
  `c` - the connection
  `d` - a relative location on the connection (must be between 0 and 1)
Returns:
  the connection midpoint

#### getGaBoundsForAnchor

    public IRectangle getGaBoundsForAnchor(Anchor anchor)

Description copied from interface: `IPeLayoutService`
Returns the bounds of the graphics algorithm, which is referenced by the anchor.

Specified by:
  `getGaBoundsForAnchor` in interface `IPeLayoutService`
Parameters:
  `anchor` - the anchor
Returns:
  the bounds of the anchor graphics algorithm

#### getLocationInfo

    public ILocationInfo getLocationInfo(Shape shape,
                                         int x,
                                         int y)

Description copied from interface: `IPeLayoutService`
Returns the location info for a specific position inside a shape. The location info contains the shape and the graphics algorithm at the given position.

Specified by:
  `getLocationInfo` in interface `IPeLayoutService`
Parameters:
  `shape` - the shape
  `x` - x coordinate
  `y` - y coordinate
Returns:
  the location info
See Also:
  `ILocationInfo`

#### getLocationRelativeToDiagram

    public ILocation getLocationRelativeToDiagram(Anchor anchor)

Description copied from interface: `IPeLayoutService`
Returns the location of the anchor relative to the diagram.

Specified by:
  `getLocationRelativeToDiagram` in interface `IPeLayoutService`
Parameters:
  `anchor` - the given anchor
Returns:
  the relative location

#### getLocationRelativeToDiagram

    public ILocation getLocationRelativeToDiagram(Shape shape)

Description copied from interface: `IPeLayoutService`
Returns the location of the shape relative to the diagram.

Specified by:
  `getLocationRelativeToDiagram` in interface `IPeLayoutService`
Parameters:
  `shape` - the given shape
Returns:
  the relative location

#### calculateSize

    public IDimension calculateSize(GraphicsAlgorithm ga)

Description copied from interface: `IGaLayoutService`
Calculates the size of the given graphics algorithm. If the graphics algorithm is a polyline or polygon then the size will be calculated. Otherwise the size of the graphics algorithm is simply returned.

Specified by:
  `calculateSize` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
Returns:
  the dimension of the given graphics algorithm

#### calculateSize

    public IDimension calculateSize(GraphicsAlgorithm ga,
                                    boolean considerLineWidth)

Description copied from interface: `IGaLayoutService`
Calculates the size of the given graphics algorithm. If the graphics algorithm is a polyline or polygon then the size will be calculated. Otherwise the size of the graphics algorithm is simply returned.

Specified by:
  `calculateSize` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `considerLineWidth` - if TRUE, the line width will be considered in the dimension
Returns:
  the dimension of the given graphics algorithm

#### setHeight

    public void setHeight(GraphicsAlgorithm ga,
                          int height)

Description copied from interface: `IGaLayoutService`
Sets the height of the given graphics algorithm.

Specified by:
  `setHeight` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `height` - the new height

#### setLocationAndSize

    public void setLocationAndSize(GraphicsAlgorithm ga,
                                   int x,
                                   int y,
                                   int width,
                                   int height)

Description copied from interface: `IGaLayoutService`
Sets location and size of the given graphics algorithm.

Specified by:
  `setLocationAndSize` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `x` - the new x coordinate
  `y` - the new y coordinate
  `width` - the new width
  `height` - the new height

#### setLocationAndSize

    public void setLocationAndSize(GraphicsAlgorithm ga,
                                   int x,
                                   int y,
                                   int width,
                                   int height,
                                   boolean avoidNegativeCoordinates)

Description copied from interface: `IGaLayoutService`
Sets location and size of the given graphics algorithm.

Specified by:
  `setLocationAndSize` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `x` - the new x coordinate
  `y` - the new y coordinate
  `width` - the new width
  `height` - the new height
  `avoidNegativeCoordinates` - if TRUE, a negative coordinate will automatically set to 0.

#### setLocation

    public void setLocation(GraphicsAlgorithm ga,
                            int x,
                            int y)

Description copied from interface: `IGaLayoutService`
Sets the location of the given graphics algorithm.

Specified by:
  `setLocation` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `x` - the new x coordinate
  `y` - the new y coordinate

#### setLocation

    public void setLocation(GraphicsAlgorithm ga,
                            int x,
                            int y,
                            boolean avoidNegativeCoordinates)

Description copied from interface: `IGaLayoutService`
Sets the location of the given graphics algorithm.

Specified by:
  `setLocation` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `x` - the new x coordinate
  `y` - the new y coordinate
  `avoidNegativeCoordinates` - if TRUE, a negative coordinate will automatically set to 0.

#### setSize

    public void setSize(GraphicsAlgorithm ga,
                        int width,
                        int height)

Description copied from interface: `IGaLayoutService`
Sets the size of the given graphics algorithm.

Specified by:
  `setSize` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `width` - the new width
  `height` - the new height

#### setWidth

    public void setWidth(GraphicsAlgorithm ga,
                         int width)

Description copied from interface: `IGaLayoutService`
Sets the width of the given graphics algorithm.

Specified by:
  `setWidth` in interface `IGaLayoutService`
Parameters:
  `ga` - graphics algorithm
  `width` - the new width

#### calculateTextSize

    public IDimension calculateTextSize(String text,
                                        Font font,
                                        boolean handleMultiline)

Description copied from interface: `IUiLayoutService`
Calculates the width and height of the given text in the given font.

Specified by:
  `calculateTextSize` in interface `IUiLayoutService`
Parameters:
  `text` - the string to calculate the rendering size for
  `font` - the font which should be considered for the string
  `handleMultiline` - Defines if line breaks in the string should be used in the calculation of the size or not. In case `true`, a new line character in the string will increase the size of the returned dimensions by one line, in case `false` a new line character will be ignored.
Returns:

#### calculateTextSize

    public IDimension calculateTextSize(String text,
                                        Font font)

Description copied from interface: `IUiLayoutService`
Calculates the width and height of the given text in the given font ignoring any new line characters in the string.

Specified by:
  `calculateTextSize` in interface `IUiLayoutService`
Parameters:
  `text` - the string to calculate the rendering size for
  `font` - the font which should be considered for the string
Returns:
See Also:
  `IGaLayoutService.calculateSize(org.eclipse.graphiti.mm.algorithms.GraphicsAlgorithm, boolean)`

#### calculateTextSize

    public IDimension calculateTextSize(AbstractText text)

Description copied from interface: `IUiLayoutService`
Calculates the width and height of the given text in the font of the gievn text. In case the given text is a `MultiText` new line characters in the string will increase the height of the returned size, otherwise (text is a `Text`) any new line characters will be ignored.

Specified by:
  `calculateTextSize` in interface `IUiLayoutService`
Parameters:
  `text` - the `AbstractText` to calculate the rendering size for
Returns: