jcontrol.ui.wombat
Class TextViewer

java.lang.Object
  extended by jcontrol.ui.wombat.Component
      extended by jcontrol.ui.wombat.AbstractFocusComponent
          extended by jcontrol.ui.wombat.AbstractScrolledComponent
              extended by jcontrol.ui.wombat.TextViewer
All Implemented Interfaces:
EventListener, ActionProducer, KeyListener, TouchListener, IFocusable

public class TextViewer
extends AbstractScrolledComponent

This class TextViewer implements a component to show a text document. Line wrapping is done automatically. If a line's text width exceeds the TextViewer's displayable width the text will be cut. The text can only be scrolled vertically.

(c) Copyright 2005-2007 DOMOLOGIC GmbH


Field Summary
static int STYLE_NONE
          Style constant for neither border nor scrollbar look.
static int STYLE_SHOW_BORDER
          Style constant for a bordered look.
static int STYLE_SHOW_SCROLLBAR
          Style constant for a bordered look with scrollbar.
 
Fields inherited from class jcontrol.ui.wombat.AbstractScrolledComponent
m_fontHeight, m_scrollBarSize, m_scrollValue
 
Fields inherited from class jcontrol.ui.wombat.AbstractFocusComponent
BORDER_WIDTH, listener
 
Fields inherited from class jcontrol.ui.wombat.Component
backgroundColor, COLOR_COMPONENT_BACKGROUND, COLOR_COMPONENT_BACKGROUND_HIGHLIGHTED, COLOR_COMPONENT_DARK_SHADOW, COLOR_COMPONENT_FOREGROUND, COLOR_COMPONENT_FOREGROUND_INACTIVE, COLOR_COMPONENT_HIGHLIGHT_SHADOW, COLOR_COMPONENT_LIGHT_SHADOW, COLOR_COMPONENT_LIST_BACKGROUND, COLOR_COMPONENT_NORMAL_SHADOW, COLOR_COMPONENT_SELECTION_TEXT, COLOR_COMPONENT_SELECTION_TEXT_BACKGROUND, COLOR_COMPONENT_SELECTION_TEXT_BACKGROUND_INACTIVE, COLOR_COMPONENT_SELECTION_TEXT_INACTIVE, eventQueue, font, foregroundColor, frame, height, parent, RESERVED1, RESERVED2, RESERVED3, RESERVED4, RESERVED5, RESERVED6, state, STATE_ABORT_UPDATE, STATE_ANIMATED, STATE_BG_COLOR_SET, STATE_COVERED, STATE_DIRTY_MASK, STATE_DIRTY_PAINTALL, STATE_DIRTY_REPAINT, STATE_DIRTY_UPDATE, STATE_DISABLED, STATE_DISPOSED, STATE_FG_COLOR_SET, STATE_FOCUS, STATE_HEIGHT_FIXED, STATE_NO_REDRAW, STATE_REVALIDATE, STATE_SELECTED, STATE_SIZE_FIXED, STATE_UPDATED, STATE_VISIBLE, STATE_WIDTH_FIXED, transparentColor, width, x, y
 
Fields inherited from interface jcontrol.ui.wombat.IFocusable
TRANSFER_FOCUS_BACKWARD, TRANSFER_FOCUS_FORWARD
 
Fields inherited from interface jcontrol.ui.wombat.event.TouchListener
RESULT_ACCEPTED, RESULT_EXECUTED, RESULT_NONE
 
Constructor Summary
TextViewer(int x, int y, int width, int height, int style)
          Constructor for TextViewer.
TextViewer(String text, int x, int y, int width, int height, int style)
          Constructor for TextViewer.
 
Method Summary
 void add(String text)
          Append a text to the end of the text field.
 int getLineCount()
          Returns the number of lines in this TextViewer.
 int getScrollValue()
          Returns the current scroll value.
 KeyEvent onKeyEvent(KeyEvent e)
          Handle KeyEvents.
 int onTouchEvent(TouchEvent e)
          Handle TouchEvent.
 void paint(XGraphics g)
          Paint this text field.
 void setBounds(int x, int y, int width, int height)
          Set the dimensions of this component.
 void setFont(Resource font)
          Sets the font for this component.
 void setScrollValue(int scrollValue)
          Sets the absolute scroll position of the text area.
 void setText(String text)
          Replaces the current text by the given string.
protected  void validateBreakPoints(XGraphics g)
           
 
Methods inherited from class jcontrol.ui.wombat.AbstractScrolledComponent
drawScrollBar
 
Methods inherited from class jcontrol.ui.wombat.AbstractFocusComponent
clearCorners, drawBevelRect, drawButton, drawDottedRect, drawFocusRect, getActionListener, onActionEvent, requestFocus, setActionListener, setEnabled, setVisible
 
Methods inherited from class jcontrol.ui.wombat.Component
drawDisabledImage, getFrame, isEnabled, isVisible, isVisibleInternal, redrawInternalAndParent, repaint, repaintAll, safeExec, setBackgroundColor, setBackgroundColorInternal, setDirty, setForegroundColor, setForegroundColorInternal, setParametersInternal, setRedraw, setTransparentColor, unsafeExec, update
 
Methods inherited from class java.lang.Object
clone, equals, getClass, notifyAll, toString, wait
 

Field Detail

STYLE_NONE

public static final int STYLE_NONE
Style constant for neither border nor scrollbar look.

See Also:
Constant Field Values

STYLE_SHOW_BORDER

public static final int STYLE_SHOW_BORDER
Style constant for a bordered look.

See Also:
Constant Field Values

STYLE_SHOW_SCROLLBAR

public static final int STYLE_SHOW_SCROLLBAR
Style constant for a bordered look with scrollbar.

See Also:
Constant Field Values
Constructor Detail

TextViewer

public TextViewer(String text,
                  int x,
                  int y,
                  int width,
                  int height,
                  int style)
Constructor for TextViewer.

Parameters:
text - The text document to show
x - The x coordinate on the display.
y - The y coordinate on the display.
width - The text field width.
height - The text field height.
style - STYLE_NONE or STYLE_SHOW_BORDER or STYLE_SHOW_SCROLLBAR

TextViewer

public TextViewer(int x,
                  int y,
                  int width,
                  int height,
                  int style)
Constructor for TextViewer.

Parameters:
x - The x coordinate on the display.
y - The y coordinate on the display.
width - The text field width.
height - The text field height.
style - STYLE_NONE or STYLE_SHOW_BORDER or STYLE_SHOW_SCROLLBAR
Method Detail

add

public void add(String text)
Append a text to the end of the text field. If the text in this TextViewer is represented by a string array a new line is added.

Parameters:
item - The text to add.

setText

public void setText(String text)
Replaces the current text by the given string.

Parameters:
text - a new text to show.

getLineCount

public int getLineCount()
Returns the number of lines in this TextViewer.

Returns:
the number of lines

setScrollValue

public void setScrollValue(int scrollValue)
Sets the absolute scroll position of the text area.

Parameters:
scrollValue - The new scroll position.

getScrollValue

public int getScrollValue()
Returns the current scroll value.

Returns:
the current scroll value.

validateBreakPoints

protected void validateBreakPoints(XGraphics g)

setBounds

public void setBounds(int x,
                      int y,
                      int width,
                      int height)
Set the dimensions of this component. The component is repainted automatically.

Overrides:
setBounds in class Component
Parameters:
x - The x-coordinate of the upper left corner
y - The y-coordinate of the upper left corner
width - The width of this component
height - The height of this component

setFont

public void setFont(Resource font)
Sets the font for this component.

Overrides:
setFont in class Component
Parameters:
font - the new font.

paint

public void paint(XGraphics g)
Paint this text field. Don't call this method directly.

Overrides:
paint in class Component
Parameters:
g - the application's graphics object.

onKeyEvent

public KeyEvent onKeyEvent(KeyEvent e)
Handle KeyEvents.

Specified by:
onKeyEvent in interface KeyListener
Specified by:
onKeyEvent in class AbstractFocusComponent
Parameters:
e - the event that contains information about the key.
Returns:
null if the KeyEvent has been consumed by the KeyListener,
or the the specified KeyEvent if it should be passed on to the next KeyListener.

onTouchEvent

public int onTouchEvent(TouchEvent e)
Handle TouchEvent.

Specified by:
onTouchEvent in interface TouchListener
Specified by:
onTouchEvent in class AbstractFocusComponent
Parameters:
e - The touch event.
Returns:
RESULT_ACCEPTED if the TouchEvent has been consumed by the TouchListener,
RESULT_EXECUTED if the TouchEvent has been consumed by the TouchListener and some important action has been performed, e.g. an action event has been invoked,
RESULT_NONE if the TouchEvent should be passed on to the next TouchListener.