com.sybase.uep.bobclient.controls
Class HyperLink

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.HyperLink
All Implemented Interfaces:
Control, net.rim.device.api.ui.DrawStyle

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

This is the hyper link control

Author:
tdang

Field Summary
 
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
HyperLink(int labelRID, long style)
          HyperLink constructor
HyperLink(int labelRID, long style, boolean showBackgroundColor)
          HyperLink constructor
HyperLink(java.lang.String label, long style)
          HyperLink constructor
HyperLink(java.lang.String label, long style, boolean showBackgroundColor)
          HyperLink constructor
 
Method Summary
protected  void drawFocus(net.rim.device.api.ui.Graphics g, boolean on)
          (non-Javadoc)
 IBOBAction getAction()
          Retrieve the action assigned to this hyperlink
 int getColSpan()
          (non-Javadoc)
 int getControlID()
          Returns the control's ID
 ICustomEventsDelegate getCustomEventsDelegate()
          Returns the control's custom events delegate
 FontStyle getFocusFontStyle()
          Retrieve focus font style
 long getHorizontalAlignment()
          (non-Javadoc)
 int getHyperLinkWidth()
          Retrieve hyperlink width
 LogicalType getLogicalType()
          Retrieve the logical type assign to this control
 java.lang.String getName()
          (non-Javadoc)
 int getPreferredHeight()
          (non-Javadoc)
 int getPreferredWidth()
          (non-Javadoc)
 int getRowSpan()
          (non-Javadoc)
 FontStyle getUnfocusFontStyle()
          Retrieve unfocus font style
 java.lang.Object getValue()
          (non-Javadoc)
 long getVerticalAlignment()
          (non-Javadoc)
protected  void layout(int width, int height)
          (non-Javadoc)
protected  void makeContextMenu(net.rim.device.api.ui.ContextMenu menu)
          (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()
          (non-Javadoc)
protected  void paint(net.rim.device.api.ui.Graphics g)
          (non-Javadoc)
 void refresh()
          (non-Javadoc)
 void refreshFooter(java.lang.String valueToBeDisplay)
          Refresh the footer field from the screen that contains the text of the button.
 void runAction()
          Run the action assigned to this hyperlink
 void setAction(IBOBAction action)
          Set the action assigned to this hyperlink
 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 setFooterField(FooterField field)
          Set the footer field
 void setLayoutHeight(int height)
          (non-Javadoc)
 void setLayoutWidth(int width)
          (non-Javadoc)
 void setLogicalType(LogicalType logicalType)
          Set logical type
 void setProperty(int key, java.lang.String value)
          Set the property values for this hyperlink
 void setRowSpan(int rowspan)
          (non-Javadoc)
 void setText(java.lang.Object text)
          Set the label value
 void setUnfocusFontStyle(FontStyle fontStyle)
          Set the unfocus font style for this control
 void setValue(java.lang.String value)
          Set the value for this hyperlink
 void setVariableLabel(ControlVariable variable)
          Set the control variable object for the label
 void setVariableValue(ControlVariable variable)
          Set the control variable object for the value
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, 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
 

Constructor Detail

HyperLink

public HyperLink(int labelRID,
                 long style)
HyperLink constructor

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

HyperLink

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

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

HyperLink

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

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

HyperLink

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

Parameters:
label - String value for the label to be displayed
style - long value for the style of this 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

makeContextMenu

protected void makeContextMenu(net.rim.device.api.ui.ContextMenu menu)
(non-Javadoc)

Overrides:
makeContextMenu in class net.rim.device.api.ui.Field
See Also:
Field.makeContextMenu(ContextMenu menu)

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)

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 control variable object for the label

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

setVariableValue

public void setVariableValue(ControlVariable variable)
Set the control variable object for the value

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

getUnfocusFontStyle

public FontStyle getUnfocusFontStyle()
Retrieve unfocus font style

Returns:
FontStyle font style object
See Also:
FontStyle

setUnfocusFontStyle

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

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

getFocusFontStyle

public FontStyle getFocusFontStyle()
Retrieve 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()

setValue

public void setValue(java.lang.String value)
Set the value for this hyperlink

Parameters:
value - String new value

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()

setLogicalType

public void setLogicalType(LogicalType logicalType)
Set logical type

Parameters:
logicalType - LogicalType logical type object
See Also:
LogicalType

getLogicalType

public LogicalType getLogicalType()
Retrieve the logical type assign to this control

Returns:
LogicalType logical type object
See Also:
LogicalType

getAction

public IBOBAction getAction()
Retrieve the action assigned to this hyperlink

Returns:
IBOBAction action object
See Also:
IBOBAction

setAction

public void setAction(IBOBAction action)
Set the action assigned to this hyperlink

Parameters:
action - IBOBAction action object to be perform when the hyperlink is clicked on
See Also:
IBOBAction

runAction

public void runAction()
Run the action assigned to this hyperlink


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

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)

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)

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()

getHyperLinkWidth

public int getHyperLinkWidth()
Retrieve hyperlink width

Returns:
int value for the width of the link text

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)

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)

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()
(non-Javadoc)

Overrides:
onUnfocus in class net.rim.device.api.ui.Field
See Also:
Field.onUnfocus()

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)

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)

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 hyperlink

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

refreshFooter

public void refreshFooter(java.lang.String valueToBeDisplay)
Refresh the footer field from the screen that contains the text of the button.

Parameters:
valueToBeDisplay - String value for the text to be display in the footer

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

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