Package org.eclipse.graphiti.util

# Class TextBuilder

java.lang.Object
org.eclipse.graphiti.util.TextBuilder

public class TextBuilder extends Object
Class to construct `TextStyleRegion`s while adding text.

Since:
  0.12

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`TextBuilder.TextBuilderRegion`
Inner class for storing the partial region styles.

## Constructor Summary

Constructors
Constructor
Description
`TextBuilder()`

## Method Summary

Modifier and Type
Method
Description
`void`
`add(String text)`
Add text to the builder.
`void`
`finishRegion(String name)`
Finish a region.
`void`
`forgetRegion(String name)`
Drop a region that was created but not yet finished.
`int`
`getLength()`
Get current length of the collected text.
`TextBuilder.TextBuilderRegion`
`getRegion(String name)`
Get a previously created and not yet finished region.
`List<TextStyleRegion>`
`getRegions()`
Get the regions created and finished for the text.
`boolean`
`isEmpty()`
Is any text added yet?
`TextBuilder.TextBuilderRegion`
`startRegion(String name)`
Start a new region in the text.
`String`
`toString()`
Get the collected text.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### TextBuilder

public TextBuilder()

## Method Details

### add

public void add(String text)
Add text to the builder.

Parameters:
  `text` - Text to append.

### getLength

public int getLength()
Get current length of the collected text.

Returns:
  Length of the text collected so far (number of code points).

### isEmpty

public boolean isEmpty()
Is any text added yet?

Returns:
  `true` if no text added yet, else `false`.

### toString

public String toString()
Get the collected text.

Overrides:
  `toString` in class `Object`
Returns:
  The concatenated strings previously given through `add(java.lang.String)`.

### getRegions

public List<TextStyleRegion> getRegions()
Get the regions created and finished for the text.

Returns:
  Regions of the text.

### startRegion

public TextBuilder.TextBuilderRegion startRegion(String name)
Start a new region in the text. Returns the created region for setting the style of the new region.

Parameters:
  `name` - Name of the region.
Returns:
  The created region.

### getRegion

public TextBuilder.TextBuilderRegion getRegion(String name)
Get a previously created and not yet finished region.

Parameters:
  `name` - Name of the region to retrieve.
Returns:
  The queried region if it exists, else `null`.

### finishRegion

public void finishRegion(String name)
Finish a region.

Parameters:
  `name` - Name of the region to finish.

### forgetRegion

public void forgetRegion(String name)
Drop a region that was created but not yet finished.

Parameters:
  `name` - Name of the region to forget.