com.mapinfo.midev.style

## Interface ILineStyle

All Superinterfaces:
  ICopiable, IMultiPass, IStyle, Iterable, Serializable

    public interface ILineStyle
    extends IStyle, IMultiPass

A list of `ILineRendition`s that provides multiple rendering passes for a single line. It allows for 'layering' `ILineRendition` attributes to achieve a certain effect.

`ILineStyle` contains a `DrawMode` attribute to aid rendering for interleaved `ILineRenditions`. `DrawMode` indicates if all the `ILineRendition`s in the list should be applied to a line before the subsequent line is rendered, or if all lines are rendered using an individual `ILineRendition` within the list before moving to the next `ILineRendition`. The second option is equivalent to interleaving.

### Nested Class Summary

Nested Classes
`static class` `ILineStyle.DrawMode` Represents how an `ILineStyle` is to be drawn.

### Field Summary

Fields
`static ILineStyle` `NONE` This constant is used to suppress previous line styles in the renderer when drawing in a multi-pass scenario.

### Method Summary

All Methods Instance Methods Abstract Methods
`Color` `getColor()` Returns the MapBasic pen color of the `ILineStyle`.
`ILineStyle` `getCopy()` Returns a 'deep', stand-alone copy of this `IStyle`.
`ILineStyle.DrawMode` `getDrawMode()` Returns the drawing mode of the `ILineStyle`.
`Integer` `getPattern()` Returns the MapBasic pen pattern of the `ILineStyle`.
`PaperLength` `getWidth()` Returns MapBasic pen width of the `ILineStyle`.
`void` `setColor(Color color)` Sets the MapBasic pen color of the `ILineStyle`.
`void` `setDrawMode(ILineStyle.DrawMode drawMode)` Sets the drawing mode of the `ILineStyle`
`void` `setPattern(Integer pattern)` Sets the MapBasic pen pattern of the `ILineStyle`.
`void` `setWidth(PaperLength width)` Sets the MapBasic pen width of the `ILineStyle`.

### Methods inherited from interface com.mapinfo.midev.style.IMultiPass

`add, add, clear, get, isEmpty, iterator, remove, set, size`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

### Field Detail

#### NONE

    static final ILineStyle NONE

This constant is used to suppress previous line styles in the renderer when drawing in a multi-pass scenario. All `ILineStyle.NONE` methods throw `UnsupportedOperationException`.

### Method Detail

#### getDrawMode

    ILineStyle.DrawMode getDrawMode()

Returns the drawing mode of the `ILineStyle`.

Returns:
  The drawing mode of the `ILineStyle`.

#### setDrawMode

    void setDrawMode(ILineStyle.DrawMode drawMode)

Sets the drawing mode of the `ILineStyle`

Parameters:
  `drawMode` - the drawing mode of the `ILineStyle`.

#### getPattern

    Integer getPattern()

Returns the MapBasic pen pattern of the `ILineStyle`.

Returns:
  the MapBasic pen pattern of the `ILineStyle`.

#### setPattern

    void setPattern(Integer pattern)

Sets the MapBasic pen pattern of the `ILineStyle`.

Parameters:
  `pattern` - the MapBasic pen pattern of the `ILineStyle`.

#### getWidth

    PaperLength getWidth()

Returns MapBasic pen width of the `ILineStyle`.

Returns:
  MapBasic pen width of the `ILineStyle`.

#### setWidth

    void setWidth(PaperLength width)

Sets the MapBasic pen width of the `ILineStyle`.

Parameters:
  `width` - the MapBasic pen width of the `ILineStyle`.

#### getColor

    Color getColor()

Returns the MapBasic pen color of the `ILineStyle`.

Returns:
  the MapBasic pen color of the `ILineStyle`.

#### setColor

    void setColor(Color color)

Sets the MapBasic pen color of the `ILineStyle`.

Parameters:
  `color` - the MapBasic pen color of the `ILineStyle`.

#### getCopy

    ILineStyle getCopy()

Description copied from interface: `IStyle`
Returns a 'deep', stand-alone copy of this `IStyle`. Changes to the returned `IStyle` will have no effect on this `IStyle` and vise-versa.

Specified by:
  `getCopy` in interface `ICopiable`
Specified by:
  `getCopy` in interface `IStyle`
Returns:
  a 'deep', stand-alone copy of this `IStyle`.