com.sybase.uep.bobclient.controls
Class Label

java.lang.Object
  extended by net.rim.device.api.ui.Field
      extended by net.rim.device.api.ui.component.LabelField
          extended by com.sybase.uep.bobclient.controls.Label
All Implemented Interfaces:
Control, net.rim.device.api.ui.DrawStyle
Direct Known Subclasses:
CellLabel

public class Label
extends net.rim.device.api.ui.component.LabelField
implements net.rim.device.api.ui.DrawStyle, Control

This is the label field control

Author:
tdang

Field Summary
protected  int _controlID
           
protected  CustomEventsHandler _customEventsHandler
           
protected  java.lang.String[] _dataParts
           
protected  int _orientation
           
protected  boolean _wrapText
           
 
Fields inherited from class net.rim.device.api.ui.component.LabelField
DEFAULT_POSITION
 
Fields inherited from class net.rim.device.api.ui.Field
ACTION_INVOKE, EDITABLE, EDITABLE_MASK, FIELD_BOTTOM, FIELD_HALIGN_MASK, FIELD_HCENTER, FIELD_LEADING, FIELD_LEFT, FIELD_RIGHT, FIELD_TOP, FIELD_TRAILING, FIELD_VALIGN_MASK, FIELD_VCENTER, FOCUSABLE, FOCUSABLE_MASK, HIGHLIGHT_FOCUS, HIGHLIGHT_SELECT, NON_FOCUSABLE, NON_SPELLCHECKABLE, READONLY, SPELLCHECKABLE, SPELLCHECKABLE_MASK, STATUS_MOVE_FOCUS_HORIZONTALLY, STATUS_MOVE_FOCUS_VERTICALLY, USE_ALL_HEIGHT, USE_ALL_WIDTH, VISUAL_STATE_ACTIVE, VISUAL_STATE_DISABLED, VISUAL_STATE_DISABLED_FOCUS, VISUAL_STATE_FOCUS, VISUAL_STATE_NORMAL
 
Fields inherited from interface net.rim.device.api.ui.DrawStyle
BASELINE, BOTTOM, ELLIPSIS, HALIGN_MASK, HCENTER, HDEFAULT, HFULL, LEADING, LEFT, RIGHT, TOP, TRAILING, TRUNCATE_BEGINNING, VALIGN_MASK, VCENTER, VDEFAULT, VFULL
 
Constructor Summary
Label(int labelRID, long style)
          Label constructor
Label(int labelRID, long style, boolean showBackgroundColor)
          Label constructor
Label(java.lang.String label, long style)
          Label constructor
Label(java.lang.String label, long style, boolean showBackgroundColor)
          Label constructor
 
Method Summary
protected  void drawFocus(net.rim.device.api.ui.Graphics g, boolean on)
          (non-Javadoc)
 void drawLabel(net.rim.device.api.ui.Graphics g, boolean focus)
           
 int getColSpan()
          (non-Javadoc)
 int getControlID()
          Returns the control's ID
 ICustomEventsDelegate getCustomEventsDelegate()
          Returns the control's custom events delegate
 FontStyle getFocusFontStyle()
          Retrieve this control's focus font style
 FontStyle getFontStyle()
          Retrieve this control's font style
 long getHorizontalAlignment()
          (non-Javadoc)
 int getLabelWidth()
          Retrieve label width
protected  int getLayoutWidth()
          Gets layout width
 java.lang.String getName()
          (non-Javadoc)
 int getPreferredHeight()
          (non-Javadoc)
 int getPreferredWidth()
          (non-Javadoc)
 int getRowSpan()
          (non-Javadoc)
 java.lang.Object getValue()
          (non-Javadoc)
 long getVerticalAlignment()
          (non-Javadoc)
protected  void layout(int width, int height)
          (non-Javadoc)
protected  boolean navigationClick(int status, int time)
          (non-Javadoc)
protected  boolean navigationMovement(int dx, int dy, int status, int time)
          (non-Javadoc)
protected  boolean navigationUnclick(int status, int time)
          (non-Javadoc)
protected  void onFocus(int direction)
          (non-Javadoc)
protected  void onUnfocus()
          Invoked when a field loses the focus.
protected  void paint(net.rim.device.api.ui.Graphics g)
          (non-Javadoc)
 void refresh()
          (non-Javadoc)
protected  void resetTextIfTruncated(boolean isFocus)
           
 void setBackgroundColor(int bgcolor)
          (non-Javadoc)
 void setColSpan(int colspan)
          (non-Javadoc)
 void setControlID(int controlID)
          Sets the control's ID
 void setCustomEventsDelegate(ICustomEventsDelegate delegate, int eventsFlags)
          Sets the control's custom events delegate for the given events
 void setFocusFontStyle(FontStyle fontStyle)
          Set the focus font style for this control
 void setFontStyle(FontStyle fontStyle)
          Set the font style for this control
 void setFooterField(FooterField field)
          Set the footer field
 void setIsGridType(boolean isGridType)
          Set if it's a grid lookup type, if it is, we show the grid icon.
 void setIsRequired(boolean isRequired)
          Set if this input field is required
 void setLayoutHeight(int height)
          (non-Javadoc)
 void setLayoutWidth(int width)
          (non-Javadoc)
 void setProperty(int key, java.lang.String value)
          Set the property values for this label
 void setRequiredForegroundColor(int color)
          Set the required foreground color for the text
 void setRowSpan(int rowspan)
          (non-Javadoc)
 void setText(java.lang.Object text)
          Set the label value
 void setVariableLabel(ControlVariable variable)
          Set the variable key
 int setWrapHeight()
          Set the height of the label field
 void setWrapText(boolean bol)
          Set if the text should wrap or not
protected  boolean touchEvent(net.rim.device.api.ui.TouchEvent message)
          (non-Javadoc)
 
Methods inherited from class net.rim.device.api.ui.component.LabelField
getAccessibleContext, getPosition, getText, isSelectionCopyable, selectionCopy, setPosition, setText, setText, setText, toString
 
Methods inherited from class net.rim.device.api.ui.Field
drawHighlightRegion, fieldChangeNotify, focusAdd, focusChangeNotify, focusRemove, getBackground, getBackground, getBorder, getBorder, getBorder, getChangeListener, getContentHeight, getContentLeft, getContentRect, getContentRect, getContentTop, getContentWidth, getContextMenu, getContextMenu, getCookie, getExtent, getExtent, getFieldStyle, getFocusListener, getFocusRect, getFont, getHeight, getIndex, getLeafFieldWithFocus, getLeft, getManager, getMargin, getMarginBottom, getMarginLeft, getMarginRight, getMarginTop, getOriginal, getPadding, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getScreen, getState, getStyle, getTop, getVisualState, getWidth, invalidate, invalidate, invalidateAll, invokeAction, isDataValid, isDirty, isEditable, isFocus, isFocusable, isMuddy, isPasteable, isSelectable, isSelecting, isSelectionCutable, isSelectionDeleteable, isSpellCheckable, isStyle, isVisible, keyChar, keyControl, keyDown, keyRepeat, keyStatus, keyUp, makeContextMenu, makeContextMenu, moveFocus, moveFocus, onDisplay, onExposed, onMenuDismissed, onMenuDismissed, onObscured, onUndisplay, onVisibilityChange, paintBackground, paste, select, selectionCut, selectionDelete, setBackground, setBackground, setBorder, setBorder, setBorder, setBorder, setBorder, setChangeListener, setCookie, setDirty, setEditable, setExtent, setFocus, setFocusListener, setFont, setFont, setMargin, setMargin, setMuddy, setNonSpellCheckable, setPadding, setPadding, setPosition, setVisualState, trackwheelClick, trackwheelUnclick, updateLayout
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_dataParts

protected java.lang.String[] _dataParts

_wrapText

protected boolean _wrapText

_customEventsHandler

protected CustomEventsHandler _customEventsHandler

_controlID

protected int _controlID

_orientation

protected int _orientation
Constructor Detail

Label

public Label(java.lang.String label,
             long style)
Label constructor

Parameters:
label - String value for the label to be displayed
style - long value for the style of this label control eg. Field.FIELD_LEFT, Field.FIELD_RIGHT, Field.FIELD_HCENTER, etc.
See Also:
Field

Label

public Label(int labelRID,
             long style)
Label constructor

Parameters:
labelRID - int value for localization resource ID of the label to be displayed
style - long value for the style of this label control eg. Field.FIELD_LEFT, Field.FIELD_RIGHT, Field.FIELD_HCENTER, etc.
See Also:
Field

Label

public Label(java.lang.String label,
             long style,
             boolean showBackgroundColor)
Label constructor

Parameters:
label - String value for the label to be displayed
style - long value for the style of this label control eg. Field.FIELD_LEFT, Field.FIELD_RIGHT, Field.FIELD_HCENTER, etc.
showBackgroundColor - true to show background color, otherwise false
See Also:
Field

Label

public Label(int labelRID,
             long style,
             boolean showBackgroundColor)
Label constructor

Parameters:
labelRID - int value for localization resource ID of the label to be displayed
style - long value for the style of this label control eg. Field.FIELD_LEFT, Field.FIELD_RIGHT, Field.FIELD_HCENTER, etc.
showBackgroundColor - true to show background color, otherwise false
See Also:
Field
Method Detail

setBackgroundColor

public void setBackgroundColor(int bgcolor)
(non-Javadoc)

Specified by:
setBackgroundColor in interface Control
Parameters:
bgcolor - int value of the color in HEX. For example: 0x00000000, 0x00FF0000, 0x00FFFFFF
See Also:
Control.setBackgroundColor(int bgcolor)

setWrapText

public void setWrapText(boolean bol)
Set if the text should wrap or not

Parameters:
bol - true if text should auto wrap, otherwise false

setColSpan

public void setColSpan(int colspan)
(non-Javadoc)

Specified by:
setColSpan in interface Control
Parameters:
colspan - int value of the column span
See Also:
Control.setColSpan(int colspan)

getColSpan

public int getColSpan()
(non-Javadoc)

Specified by:
getColSpan in interface Control
Returns:
int value of the column span
See Also:
Control.getColSpan()

setRowSpan

public void setRowSpan(int rowspan)
(non-Javadoc)

Specified by:
setRowSpan in interface Control
Parameters:
rowspan - int value of the row span
See Also:
Control.setRowSpan(int rowspan)

getRowSpan

public int getRowSpan()
(non-Javadoc)

Specified by:
getRowSpan in interface Control
Returns:
int value of the row span
See Also:
Control.getRowSpan()

getHorizontalAlignment

public long getHorizontalAlignment()
(non-Javadoc)

Specified by:
getHorizontalAlignment in interface Control
Returns:
long value of the horizontal alignment. Possible values could be Field.FIELD_HCENTER, Field.FIELD_RIGHT, or Field.FIELD_LEFT
See Also:
Control.getHorizontalAlignment()

getVerticalAlignment

public long getVerticalAlignment()
(non-Javadoc)

Specified by:
getVerticalAlignment in interface Control
Returns:
long value of the vertical alignment Possible values could be Field.FIELD_TOP, Field.FIELD_BOTTOM, or Field.FIELD_VCENTER
See Also:
Control.getVerticalAlignment()

setVariableLabel

public void setVariableLabel(ControlVariable variable)
Set the variable key

Parameters:
variable - ControlVariable control variable object
See Also:
ControlVariable

getFontStyle

public FontStyle getFontStyle()
Retrieve this control's font style

Returns:
FontStyle font style object
See Also:
FontStyle

setFontStyle

public void setFontStyle(FontStyle fontStyle)
Set the font style for this control

Parameters:
fontStyle - FontStyle font style object
See Also:
FontStyle

getFocusFontStyle

public FontStyle getFocusFontStyle()
Retrieve this control's focus font style

Returns:
FontStyle font style object
See Also:
FontStyle

setFocusFontStyle

public void setFocusFontStyle(FontStyle fontStyle)
Set the focus font style for this control

Parameters:
fontStyle - FontStyle font style object
See Also:
FontStyle

getName

public java.lang.String getName()
(non-Javadoc)

Specified by:
getName in interface Control
Returns:
String value of the key name
See Also:
Control.getName()

getValue

public java.lang.Object getValue()
(non-Javadoc)

Specified by:
getValue in interface Control
Returns:
Object of the value set for this control
See Also:
Control.getValue()

setIsGridType

public void setIsGridType(boolean isGridType)
Set if it's a grid lookup type, if it is, we show the grid icon.

Parameters:
isGridType - true if it's of grid lookup type, otherwise false

setIsRequired

public void setIsRequired(boolean isRequired)
Set if this input field is required

Parameters:
isRequired - true if label is required, otherwise false

setText

public void setText(java.lang.Object text)
Set the label value

Overrides:
setText in class net.rim.device.api.ui.component.LabelField
Parameters:
text - String value for the label

getLayoutWidth

protected int getLayoutWidth()
Gets layout width

Returns:
_layoutWidth

setLayoutWidth

public void setLayoutWidth(int width)
(non-Javadoc)

Specified by:
setLayoutWidth in interface Control
Parameters:
width - int value of the available layout width
See Also:
Control.setLayoutWidth(int width)

setRequiredForegroundColor

public void setRequiredForegroundColor(int color)
Set the required foreground color for the text

Parameters:
color - int HEX value for the required foreground color. Examples of colors are 0x00FFFFFF, 0x00FF0000, 0x00000000

getPreferredWidth

public int getPreferredWidth()
(non-Javadoc)

Specified by:
getPreferredWidth in interface Control
Overrides:
getPreferredWidth in class net.rim.device.api.ui.component.LabelField
Returns:
int value of the available layout width
See Also:
Control.getPreferredWidth()

getLabelWidth

public int getLabelWidth()
Retrieve label width

Returns:
int value for the label width

setLayoutHeight

public void setLayoutHeight(int height)
(non-Javadoc)

Specified by:
setLayoutHeight in interface Control
Parameters:
height - int value of the available layout height
See Also:
Control.setLayoutHeight(int height)

getPreferredHeight

public int getPreferredHeight()
(non-Javadoc)

Specified by:
getPreferredHeight in interface Control
Overrides:
getPreferredHeight in class net.rim.device.api.ui.component.LabelField
Returns:
int value of the available layout height
See Also:
Control.getPreferredHeight()

layout

protected void layout(int width,
                      int height)
(non-Javadoc)

Overrides:
layout in class net.rim.device.api.ui.component.LabelField
See Also:
Field.layout(int width, int height)

onFocus

protected void onFocus(int direction)
(non-Javadoc)

Overrides:
onFocus in class net.rim.device.api.ui.Field
See Also:
Field.onFocus(int direction)

onUnfocus

protected void onUnfocus()
Invoked when a field loses the focus.

Overrides:
onUnfocus in class net.rim.device.api.ui.Field

navigationClick

protected boolean navigationClick(int status,
                                  int time)
(non-Javadoc)

Overrides:
navigationClick in class net.rim.device.api.ui.Field
See Also:
Field.navigationClick(int status, int time)

navigationUnclick

protected boolean navigationUnclick(int status,
                                    int time)
(non-Javadoc)

Overrides:
navigationUnclick in class net.rim.device.api.ui.Field
See Also:
Field.navigationUnclick(int status, int time)

navigationMovement

protected boolean navigationMovement(int dx,
                                     int dy,
                                     int status,
                                     int time)
(non-Javadoc)

Overrides:
navigationMovement in class net.rim.device.api.ui.Field
See Also:
Field.navigationMovement(int dx, int dy, int status, int time)

touchEvent

protected boolean touchEvent(net.rim.device.api.ui.TouchEvent message)
(non-Javadoc)

Overrides:
touchEvent in class net.rim.device.api.ui.Field
See Also:
Field.touchEvent(TouchEvent message)

drawFocus

protected void drawFocus(net.rim.device.api.ui.Graphics g,
                         boolean on)
(non-Javadoc)

Overrides:
drawFocus in class net.rim.device.api.ui.Field
See Also:
Field.drawFocus(Graphics g, boolean on)

paint

protected void paint(net.rim.device.api.ui.Graphics g)
(non-Javadoc)

Overrides:
paint in class net.rim.device.api.ui.component.LabelField
See Also:
Field.paint(Graphics g)

drawLabel

public void drawLabel(net.rim.device.api.ui.Graphics g,
                      boolean focus)

setWrapHeight

public int setWrapHeight()
Set the height of the label field

Returns:
int value for the height

refresh

public void refresh()
(non-Javadoc)

Specified by:
refresh in interface Control
See Also:
Control.refresh()

setProperty

public void setProperty(int key,
                        java.lang.String value)
Set the property values for this label

Parameters:
key - int int value for the key of a specific attribute
value - String value for this attribute

setFooterField

public void setFooterField(FooterField field)
Set the footer field

Parameters:
{@link - FooterField} footer field to put the text of the textinput into. This is useful for long text, so it can be displayed in the footer. null value if there is no footer.
See Also:
FooterField

resetTextIfTruncated

protected void resetTextIfTruncated(boolean isFocus)

getCustomEventsDelegate

public ICustomEventsDelegate getCustomEventsDelegate()
Returns the control's custom events delegate

Returns:
the control's custom events delegate

setCustomEventsDelegate

public void setCustomEventsDelegate(ICustomEventsDelegate delegate,
                                    int eventsFlags)
Sets the control's custom events delegate for the given events

Parameters:
delegate - custom events delegate
eventsFlags - the events to set delegate to

getControlID

public int getControlID()
Returns the control's ID

Returns:
the control's Id

setControlID

public void setControlID(int controlID)
Sets the control's ID

Parameters:
controlId - control ID