org.apache.pivot.wtk.skin
Class TextPaneSkin

java.lang.Object
  extended by org.apache.pivot.wtk.skin.ComponentSkin
      extended by org.apache.pivot.wtk.skin.ContainerSkin
          extended by org.apache.pivot.wtk.skin.TextPaneSkin
All Implemented Interfaces:
ComponentKeyListener, ComponentListener, ComponentMouseButtonListener, ComponentMouseListener, ComponentMouseWheelListener, ComponentStateListener, ComponentTooltipListener, ConstrainedVisual, ContainerListener, ContainerMouseListener, Skin, TextPane.Skin, TextPaneListener, TextPaneSelectionListener, Visual
Direct Known Subclasses:
TerraTextPaneSkin

public class TextPaneSkin
extends ContainerSkin
implements TextPane.Skin, TextPaneListener, TextPaneSelectionListener

Text pane skin.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.pivot.wtk.skin.ContainerSkin
ContainerSkin.IndexFocusTraversalPolicy
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.TextPaneListener
TextPaneListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ContainerListener
ContainerListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ContainerMouseListener
ContainerMouseListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentListener
ComponentListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentStateListener
ComponentStateListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentMouseListener
ComponentMouseListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentMouseButtonListener
ComponentMouseButtonListener.Adapter
 
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentKeyListener
ComponentKeyListener.Adapter
 
Constructor Summary
TextPaneSkin()
           
 
Method Summary
(package private)  TextPaneSkinNodeView createNodeView(Node node)
           
 void documentChanged(TextPane textPane, Document previousDocument)
          Called when a text pane's document has changed.
 void editableChanged(TextPane textPane)
          Called when a text pane's editable state has changed.
 void enabledChanged(Component component)
          Called when a component's enabled state has changed.
 void focusedChanged(Component component, Component obverseComponent)
          Called when a component's focused state has changed.
 int getBaseline(int width, int height)
          Returns the baseline for a given width and height.
 Bounds getCharacterBounds(int offset)
          Returns the bounds of the character at a given offset within the document.
 Color getColor()
          Returns the foreground color of the text
 Font getFont()
          Returns the font of the text
 Color getInactiveColor()
           
 Color getInactiveSelectionBackgroundColor()
           
 Color getInactiveSelectionColor()
           
 int getInsertionPoint(int x, int y)
          Returns the insertion point for a given location.
 Insets getMargin()
          Returns the amount of space between the edge of the TextPane and its Document
 int getNextInsertionPoint(int x, int from, TextPane.ScrollDirection direction)
          Returns the next insertion point given an x coordinate and a character offset.
 int getPreferredHeight(int width)
          Returns the visual's preferred height given the provided width constraint.
 Dimensions getPreferredSize()
          Returns the visual's unconstrained preferred size.
 int getPreferredWidth(int height)
          Returns the visual's preferred width given the provided height constraint.
 int getRowAt(int offset)
          Returns the row index of the character at a given offset within the document.
 int getRowCount()
          Returns the total number of rows in the document.
(package private)  Area getSelection()
           
 Color getSelectionBackgroundColor()
           
 Color getSelectionColor()
           
 boolean getWrapText()
           
 void install(Component component)
          Associates a skin with a component.
(package private)  void invalidateNodeViewTree()
           
 boolean isFocusable()
          By default, skins are focusable.
 boolean keyPressed(Component component, int keyCode, Keyboard.KeyLocation keyLocation)
          TAB Transfers focus forwards
TAB + SHIFT Transfers focus backwards
 boolean keyTyped(Component component, char character)
          Called when a key has been typed.
 void layout()
          If the component on which the skin is installed is a container, lays out the container's children.
 boolean mouseClick(Component component, Mouse.Button button, int x, int y, int count)
          Called when a mouse button is clicked over a component.
 boolean mouseDown(Component component, Mouse.Button button, int x, int y)
          Called when a mouse button is pressed over a component.
 boolean mouseMove(Component component, int x, int y)
          Called when the mouse is moved over a component.
 boolean mouseUp(Component component, Mouse.Button button, int x, int y)
          Called when a mouse button is released over a component.
 void paint(Graphics2D graphics)
          Paints the visual.
 void selectionChanged(TextPane textPane, int previousSelectionStart, int previousSelectionLength)
          Called when a text pane's selection state has changed.
 void setColor(Color color)
          Sets the foreground color of the text
 void setColor(String color)
          Sets the foreground color of the text
 void setFont(Dictionary<String,?> font)
          Sets the font of the text
 void setFont(Font font)
          Sets the font of the text
 void setFont(String font)
          Sets the font of the text
 void setInactiveColor(Color inactiveColor)
           
 void setInactiveColor(String inactiveColor)
           
 void setInactiveSelectionBackgroundColor(Color inactiveSelectionBackgroundColor)
           
 void setInactiveSelectionBackgroundColor(String inactiveSelectionBackgroundColor)
           
 void setInactiveSelectionColor(Color inactiveSelectionColor)
           
 void setInactiveSelectionColor(String inactiveSelectionColor)
           
 void setMargin(Dictionary<String,?> margin)
          Sets the amount of space between the edge of the TextPane and its Document
 void setMargin(Insets margin)
          Sets the amount of space between the edge of the TextPane and its Document
 void setMargin(int margin)
          Sets the amount of space between the edge of the TextPane and its Document
 void setMargin(Number margin)
          Sets the amount of space between the edge of the TextPane and its Document
 void setMargin(String margin)
          Sets the amount of space between the edge of the TextPane and its Document
 void setSelectionBackgroundColor(Color selectionBackgroundColor)
           
 void setSelectionBackgroundColor(String selectionBackgroundColor)
           
 void setSelectionColor(Color selectionColor)
           
 void setSelectionColor(String selectionColor)
           
 void setWrapText(boolean wrapText)
           
 
Methods inherited from class org.apache.pivot.wtk.skin.ContainerSkin
componentInserted, componentMoved, componentsRemoved, focusTraversalPolicyChanged, getBackgroundColor, getBackgroundPaint, isOpaque, mouseDown, mouseMove, mouseUp, mouseWheel, setBackgroundColor, setBackgroundColor, setBackgroundPaint, setBackgroundPaint, setBackgroundPaint
 
Methods inherited from class org.apache.pivot.wtk.skin.ComponentSkin
cursorChanged, decodeFont, dragSourceChanged, dropTargetChanged, getBaseline, getComponent, getHeight, getWidth, heightLimitsChanged, invalidateComponent, keyReleased, locationChanged, menuHandlerChanged, mouseOut, mouseOver, mouseWheel, nameChanged, parentChanged, preferredSizeChanged, repaintComponent, repaintComponent, repaintComponent, repaintComponent, repaintComponent, setSize, sizeChanged, tooltipDelayChanged, tooltipTextChanged, tooltipTriggered, visibleChanged, widthLimitsChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextPaneSkin

public TextPaneSkin()
Method Detail

install

public void install(Component component)
Description copied from interface: Skin
Associates a skin with a component.

Specified by:
install in interface Skin
Overrides:
install in class ContainerSkin
Parameters:
component - The component to which the skin is being attached.

isFocusable

public boolean isFocusable()
Description copied from class: ComponentSkin
By default, skins are focusable.

Specified by:
isFocusable in interface Skin
Overrides:
isFocusable in class ContainerSkin
Returns:
false; by default, containers are not focusable.

getPreferredWidth

public int getPreferredWidth(int height)
Description copied from interface: ConstrainedVisual
Returns the visual's preferred width given the provided height constraint.

Specified by:
getPreferredWidth in interface ConstrainedVisual
Overrides:
getPreferredWidth in class ContainerSkin
Parameters:
height - The height by which to constrain the preferred width, or -1 for no constraint.

getPreferredHeight

public int getPreferredHeight(int width)
Description copied from interface: ConstrainedVisual
Returns the visual's preferred height given the provided width constraint.

Specified by:
getPreferredHeight in interface ConstrainedVisual
Overrides:
getPreferredHeight in class ContainerSkin
Parameters:
width - The width by which to constrain the preferred height, or -1 for no constraint.

getPreferredSize

public Dimensions getPreferredSize()
Description copied from interface: ConstrainedVisual
Returns the visual's unconstrained preferred size.

Specified by:
getPreferredSize in interface ConstrainedVisual
Overrides:
getPreferredSize in class ComponentSkin

getBaseline

public int getBaseline(int width,
                       int height)
Description copied from interface: ConstrainedVisual
Returns the baseline for a given width and height.

Specified by:
getBaseline in interface ConstrainedVisual
Overrides:
getBaseline in class ComponentSkin
Returns:
The baseline relative to the origin of this visual, or -1 if this visual does not have a baseline.

layout

public void layout()
Description copied from interface: Skin
If the component on which the skin is installed is a container, lays out the container's children.

Specified by:
layout in interface Skin

paint

public void paint(Graphics2D graphics)
Description copied from interface: Visual
Paints the visual.

Specified by:
paint in interface Visual
Overrides:
paint in class ContainerSkin
Parameters:
graphics - The graphics context in which to paint the visual.

getInsertionPoint

public int getInsertionPoint(int x,
                             int y)
Description copied from interface: TextPane.Skin
Returns the insertion point for a given location.

Specified by:
getInsertionPoint in interface TextPane.Skin
Returns:
The insertion point for the given location.

getNextInsertionPoint

public int getNextInsertionPoint(int x,
                                 int from,
                                 TextPane.ScrollDirection direction)
Description copied from interface: TextPane.Skin
Returns the next insertion point given an x coordinate and a character offset.

Specified by:
getNextInsertionPoint in interface TextPane.Skin
Returns:
The next insertion point.

getRowAt

public int getRowAt(int offset)
Description copied from interface: TextPane.Skin
Returns the row index of the character at a given offset within the document.

Specified by:
getRowAt in interface TextPane.Skin
Returns:
The row index of the character at the given offset.

getRowCount

public int getRowCount()
Description copied from interface: TextPane.Skin
Returns the total number of rows in the document.

Specified by:
getRowCount in interface TextPane.Skin
Returns:
The number of rows in the document.

getCharacterBounds

public Bounds getCharacterBounds(int offset)
Description copied from interface: TextPane.Skin
Returns the bounds of the character at a given offset within the document.

Specified by:
getCharacterBounds in interface TextPane.Skin
Returns:
The bounds of the character at the given offset.

getFont

public Font getFont()
Returns the font of the text


setFont

public void setFont(Font font)
Sets the font of the text


setFont

public final void setFont(String font)
Sets the font of the text

Parameters:
font - A font specification

setFont

public final void setFont(Dictionary<String,?> font)
Sets the font of the text

Parameters:
font - A dictionary describing a font

getColor

public Color getColor()
Returns the foreground color of the text


setColor

public void setColor(Color color)
Sets the foreground color of the text


setColor

public final void setColor(String color)
Sets the foreground color of the text

Parameters:
color - Any of the color values recognized by Pivot.

getInactiveColor

public Color getInactiveColor()

setInactiveColor

public void setInactiveColor(Color inactiveColor)

setInactiveColor

public final void setInactiveColor(String inactiveColor)

getSelectionColor

public Color getSelectionColor()

setSelectionColor

public void setSelectionColor(Color selectionColor)

setSelectionColor

public final void setSelectionColor(String selectionColor)

getSelectionBackgroundColor

public Color getSelectionBackgroundColor()

setSelectionBackgroundColor

public void setSelectionBackgroundColor(Color selectionBackgroundColor)

setSelectionBackgroundColor

public final void setSelectionBackgroundColor(String selectionBackgroundColor)

getInactiveSelectionColor

public Color getInactiveSelectionColor()

setInactiveSelectionColor

public void setInactiveSelectionColor(Color inactiveSelectionColor)

setInactiveSelectionColor

public final void setInactiveSelectionColor(String inactiveSelectionColor)

getInactiveSelectionBackgroundColor

public Color getInactiveSelectionBackgroundColor()

setInactiveSelectionBackgroundColor

public void setInactiveSelectionBackgroundColor(Color inactiveSelectionBackgroundColor)

setInactiveSelectionBackgroundColor

public final void setInactiveSelectionBackgroundColor(String inactiveSelectionBackgroundColor)

getMargin

public Insets getMargin()
Returns the amount of space between the edge of the TextPane and its Document


setMargin

public void setMargin(Insets margin)
Sets the amount of space between the edge of the TextPane and its Document


setMargin

public final void setMargin(Dictionary<String,?> margin)
Sets the amount of space between the edge of the TextPane and its Document

Parameters:
margin - A dictionary with keys in the set {left, top, bottom, right}.

setMargin

public final void setMargin(int margin)
Sets the amount of space between the edge of the TextPane and its Document


setMargin

public final void setMargin(Number margin)
Sets the amount of space between the edge of the TextPane and its Document


setMargin

public final void setMargin(String margin)
Sets the amount of space between the edge of the TextPane and its Document

Parameters:
margin - A string containing an integer or a JSON dictionary with keys left, top, bottom, and/or right.

getWrapText

public boolean getWrapText()

setWrapText

public void setWrapText(boolean wrapText)

mouseMove

public boolean mouseMove(Component component,
                         int x,
                         int y)
Description copied from interface: ComponentMouseListener
Called when the mouse is moved over a component.

Specified by:
mouseMove in interface ComponentMouseListener
Overrides:
mouseMove in class ComponentSkin
Returns:
true to consume the event; false to allow it to propagate.

mouseDown

public boolean mouseDown(Component component,
                         Mouse.Button button,
                         int x,
                         int y)
Description copied from interface: ComponentMouseButtonListener
Called when a mouse button is pressed over a component.

Specified by:
mouseDown in interface ComponentMouseButtonListener
Overrides:
mouseDown in class ComponentSkin
Returns:
true to consume the event; false to allow it to propagate.

mouseUp

public boolean mouseUp(Component component,
                       Mouse.Button button,
                       int x,
                       int y)
Description copied from interface: ComponentMouseButtonListener
Called when a mouse button is released over a component.

Specified by:
mouseUp in interface ComponentMouseButtonListener
Overrides:
mouseUp in class ComponentSkin
Returns:
true to consume the event; false to allow it to propagate.

mouseClick

public boolean mouseClick(Component component,
                          Mouse.Button button,
                          int x,
                          int y,
                          int count)
Description copied from interface: ComponentMouseButtonListener
Called when a mouse button is clicked over a component.

Specified by:
mouseClick in interface ComponentMouseButtonListener
Overrides:
mouseClick in class ComponentSkin
Returns:
true to consume the event; false to allow it to propagate.

keyTyped

public boolean keyTyped(Component component,
                        char character)
Description copied from interface: ComponentKeyListener
Called when a key has been typed.

Specified by:
keyTyped in interface ComponentKeyListener
Overrides:
keyTyped in class ComponentSkin
Returns:
true to consume the event; false to allow it to propagate.

keyPressed

public boolean keyPressed(Component component,
                          int keyCode,
                          Keyboard.KeyLocation keyLocation)
Description copied from class: ComponentSkin
TAB Transfers focus forwards
TAB + SHIFT Transfers focus backwards

Specified by:
keyPressed in interface ComponentKeyListener
Overrides:
keyPressed in class ComponentSkin
Returns:
true to consume the event; false to allow it to propagate.

enabledChanged

public void enabledChanged(Component component)
Description copied from interface: ComponentStateListener
Called when a component's enabled state has changed.

Called both when the component is enabled and when it is disabled. The component's enabled flag has already been set when this method is called so the new state can be determined by calling the Component.isEnabled() method.

Specified by:
enabledChanged in interface ComponentStateListener
Overrides:
enabledChanged in class ComponentSkin
Parameters:
component - The component whose enabled state is changing.

focusedChanged

public void focusedChanged(Component component,
                           Component obverseComponent)
Description copied from interface: ComponentStateListener
Called when a component's focused state has changed.

This will be called both when a component gains focus and when it loses focus. The currently focused component has already been set when this method is called, so that the new state of the component can be determined by calling the Component.isFocused() method.

Specified by:
focusedChanged in interface ComponentStateListener
Overrides:
focusedChanged in class ComponentSkin
Parameters:
component - The component that is either gaining focus or the one that previously had focus and is now losing it.
obverseComponent - If the component is gaining focus, this is the component that is losing focus. If the component is losing focus this is the component that is gaining the focus instead.

documentChanged

public void documentChanged(TextPane textPane,
                            Document previousDocument)
Description copied from interface: TextPaneListener
Called when a text pane's document has changed.

Specified by:
documentChanged in interface TextPaneListener

editableChanged

public void editableChanged(TextPane textPane)
Description copied from interface: TextPaneListener
Called when a text pane's editable state has changed.

Specified by:
editableChanged in interface TextPaneListener

selectionChanged

public void selectionChanged(TextPane textPane,
                             int previousSelectionStart,
                             int previousSelectionLength)
Description copied from interface: TextPaneSelectionListener
Called when a text pane's selection state has changed.

Specified by:
selectionChanged in interface TextPaneSelectionListener

createNodeView

TextPaneSkinNodeView createNodeView(Node node)

getSelection

Area getSelection()

invalidateNodeViewTree

void invalidateNodeViewTree()