|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--net.rim.device.api.ui.Field | +--net.rim.device.api.ui.Manager | +--net.rim.device.api.ui.Screen
Base class for all screens.
Each UiEngine
presents an interface to the user by pushing
screens onto its display stack, and popping them off when interaction with
the managed fields on that screen is finished.
Delegate manager
Each screen object has a delegate manager, the single Manager object
directly controlled by the screen to handle layout and scrolling for the
entire screen.
*
styles
Screen does not accept Field.FOCUSABLE_MASK
,
Field.EDITABLE_MASK
.
Field Summary | ||
static long |
DEFAULT_CLOSE
If specified, screen will provide a close action. |
|
static long |
DEFAULT_MENU
If specified, screen will provide a default menu. |
Fields inherited from class net.rim.device.api.ui.Manager |
BOTTOMMOST, DOWNWARD, HORIZONTAL_SCROLL, HORIZONTAL_SCROLL_MASK, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_MASK, LEAVE_BLANK_SPACE, LEFTMOST, LEFTWARD, NO_HORIZONTAL_SCROLL, NO_HORIZONTAL_SCROLLBAR, NO_SCROLL_RESET, NO_VERTICAL_SCROLL, NO_VERTICAL_SCROLLBAR, QUANTA_FONT, RIGHTMOST, RIGHTWARD, TOPMOST, UPWARD, VERTICAL_SCROLL, VERTICAL_SCROLL_MASK, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_MASK |
Fields inherited from class net.rim.device.api.ui.Field |
ACTION_INVOKE, EDITABLE, EDITABLE_MASK, FIELD_BOTTOM, FIELD_HALIGN_MASK, FIELD_HCENTER, FIELD_LEFT, FIELD_RIGHT, FIELD_TOP, FIELD_VALIGN_MASK, FIELD_VCENTER, FOCUSABLE, FOCUSABLE_MASK, HIGHLIGHT_FOCUS, HIGHLIGHT_SELECT, NON_FOCUSABLE, READONLY, STATUS_MOVE_FOCUS_HORIZONTALLY, STATUS_MOVE_FOCUS_VERTICALLY, USE_ALL_HEIGHT, USE_ALL_WIDTH |
Constructor Summary | ||
Screen(Manager delegate)
Constructs a screen with provided delegate manager. |
||
Screen(Manager delegate,
long style)
Constructs specific type of screen with provided delegate manager. |
Method Summary | ||
void |
add(Field field)
Adds a field to this screen's manager. |
|
void |
addKeyListener(KeyListener listener)
Registers a key event listener for this screen. |
|
void |
addTrackwheelListener(TrackwheelListener listener)
Registers a trackwheel event listener for this screen. |
|
![]() |
void |
close()
Closes this screen. |
void |
delete(Field field)
Deletes a field from this screen's manager. |
|
void |
deleteRange(int start,
int count)
Deletes a range of fields from this screen's manager. |
|
![]() |
void |
doPaint()
Paints this screen. |
![]() |
void |
ensureRegionVisible(Field field,
int x,
int y,
int width,
int height)
Attempts to make your provided region visible. |
Application |
getApplication()
Retrieves this screen's application. |
|
![]() |
MenuItem |
getDefaultMenuItem(int instance)
Retrieves the default menu item. |
Manager |
getDelegate()
Retrieves this screen's delegate manager. |
|
Field |
getField(int index)
Retrieves controlled field with specified index. |
|
int |
getFieldAtLocation(int x,
int y)
Retrieves index of field under provided point. |
|
int |
getFieldCount()
Retrieves the number of controlled fields. |
|
Field |
getFieldWithFocus()
Retrieves controlled field with focus. |
|
int |
getFieldWithFocusIndex()
Retrieves index of controlled field with focus. |
|
void |
getFocusRect(XYRect rect)
Retrieves current extent of the focus. |
|
Graphics |
getGraphics()
Retrieves the graphics context for this screen. |
|
Field |
getLeafFieldWithFocus()
Retrieves leaf field with focus. |
|
Menu |
getMenu(int instance)
Retrieves the menu. |
|
Screen |
getScreenAbove()
Retrieves handle for screen above this one. |
|
Screen |
getScreenBelow()
Retrieves handle for screen below this one. |
|
UiEngine |
getUiEngine()
Retrieves UiEngine that owns the display. |
|
void |
insert(Field field,
int index)
Inserts a field to this screen's manager. |
|
void |
invalidate()
Invalidates a region of this screen. |
|
void |
invalidate(int x,
int y,
int width,
int height)
Invalidates a region of this screen. |
|
void |
invalidateAll(int x,
int y,
int width,
int height)
Invalidates a region of this screen. |
|
void |
invalidateLayout()
Invalidates this screen's layout (including all controlled fields). |
|
![]() |
protected boolean |
invokeAction(int action)
Invokes an action on this screen. |
boolean |
isDataValid()
Computes and returns whether or not the data on this screen is valid. |
|
boolean |
isDirty()
Determines if this screen is dirty. |
|
boolean |
isDisplayed()
Determines if this screen is currently in use. |
|
boolean |
isFocusable()
Verifies that the delegate manager accepts the focus. |
|
boolean |
isGlobal()
Determines if this is a global screen. |
|
boolean |
isGlobalStatus()
Deprecated. Use isGlobal() |
|
boolean |
isMuddy()
Determines if this screen is muddy. |
|
boolean |
isSelecting()
Determines if this screen has the focus. |
|
protected boolean |
keyChar(char c,
int status,
int time)
Delegates key generation event to the controlled field with focus. |
|
protected boolean |
keyCharUnhandled(char key,
int status,
int time)
Invoked when a keyChar event is unhandled. |
|
protected boolean |
keyControl(char c,
int status,
int time)
Delegates key generation event to the controlled field with focus. |
|
protected boolean |
keyDown(int keycode,
int time)
Delegates key down event to controlled field with focus. |
|
protected boolean |
keyRepeat(int keycode,
int time)
Delegates key repeat event to controlled field with focus. |
|
protected boolean |
keyStatus(int keycode,
int time)
Delegates key status event to controlled field with focus. |
|
protected boolean |
keyUp(int keycode,
int time)
Delegates key up event to controlled field with focus. |
|
protected void |
layoutDelegate(int width,
int height)
Lays out this screen's delegate. |
|
protected void |
makeMenu(Menu menu,
int instance)
Called from onMenu to populate the menu. |
|
![]() |
protected boolean |
navigationClick(int status,
int time)
Delegates navigational click events. |
![]() |
protected boolean |
navigationMovement(int dx,
int dy,
int status,
int time)
Invoked when a navigational motion occurs. |
![]() |
protected boolean |
navigationUnclick(int status,
int time)
Delegates navigation unclick events. |
![]() |
boolean |
onClose()
Indicates a close event has occurred. |
![]() |
protected void |
onDisplay()
Invoked when this screen is pushed onto the display stack. |
![]() |
protected void |
onExposed()
Invoked when this screen is exposed. |
![]() |
protected void |
onFocus(int direction)
Finds a controlled field to give the focus. |
![]() |
protected void |
onFocusNotify(boolean focus)
Called whenever the screen has gained or lost focus. |
![]() |
boolean |
onMenu(int instance)
Invoked when a menu needs displaying. |
protected void |
onMenuDismissed()
Deprecated. Use onMenuDismissed(Menu). |
|
protected void |
onMenuDismissed(Menu menu)
Called when the menu is dismissed. |
|
![]() |
protected void |
onObscured()
Invoked when this screen is obscured. |
![]() |
protected boolean |
onSave()
Invoked when the screen should save its contents. |
![]() |
protected boolean |
onSavePrompt()
Invoked when the screen should prompt to save its contents. |
![]() |
protected void |
onUndisplay()
Invoked when this screen is popped off the display stack. |
![]() |
protected void |
onUnfocus()
Invoked when focus is removed from this screen. |
protected boolean |
openDevelopmentBackdoor(int backdoorCode)
Handles development backdoor key-sequences. |
|
protected boolean |
openProductionBackdoor(int backdoorCode)
Handles production backdoor key-sequences. |
|
protected void |
paint(Graphics graphics)
Paints this screen's visible region. |
|
![]() |
protected void |
paintBackground(Graphics graphics)
Paint this screen's background. |
![]() |
void |
removeFocus()
Removes focus from this screen. |
void |
removeKeyListener(KeyListener listener)
Removes a key event listener from this screen. |
|
void |
removeTrackwheelListener(TrackwheelListener listener)
Removes a trackwheel event listener from this screen. |
|
void |
replace(Field oldField,
Field newField)
Removes a field from this Screen and replaces it with another field. |
|
void |
save()
Invoked when the screen should save its contents. |
|
boolean |
scroll(int direction)
Scrolls the focus in specified direction. |
|
protected void |
setBackdoorAltStatus(boolean altStatus)
Sets whether backdoors key sequences use ALT'd or un-ALT'd keystrokes. |
|
protected void |
setDefaultClose(boolean provideDefaultClose)
This method controls whether the screen's menu contains a "close" menu item. |
|
void |
setDirty(boolean dirty)
Cleans or dirties all controlled fields. |
|
void |
setFocus()
Sets the focus to the delegate manager. |
|
boolean |
setFocus(Field field,
int x,
int y,
int status,
int time)
Sets focus to exact position in current screen. |
|
void |
setHorizontalQuantization(int horizontalQuanta)
Sets the horizontal quantization. |
|
protected void |
setPositionDelegate(int x,
int y)
Set the position of this screen's layout manager (delegate). |
|
void |
setTrackballFilter(int filter)
Sets the trackball filter for this Screen. |
|
void |
setTrackballSensitivityXOffset(int trackballSensitivityXOffset)
Sets the relative trackball sensitivity for the X axis. |
|
void |
setTrackballSensitivityYOffset(int trackballSensitivityYOffset)
Sets the relative trackball sensitivity for the X axis. |
|
void |
setVerticalQuantization(int verticalQuanta)
Sets the vertical quantization. |
|
protected boolean |
trackwheelClick(int status,
int time)
Delegates trackwheel click events. |
|
protected boolean |
trackwheelClickUnhandled(int status,
int time)
Handles trackwheel click event if delegate passes it through. |
|
protected boolean |
trackwheelRoll(int amount,
int status,
int time)
Invoked when the trackwheel is rolled. |
|
protected boolean |
trackwheelUnclick(int status,
int time)
Delegates trackwheel unclick events. |
|
void |
updateDisplay()
Updates the display. |
Methods inherited from class net.rim.device.api.ui.Manager |
deleteAll, getHorizontalScroll, getPreferredHeightOfChild, getPreferredWidthOfChild, getVerticalScroll, getVirtualHeight, getVirtualWidth, getVisibleHeight, getVisibleWidth, invalidateFieldRange, isDownArrowShown, isUpArrowShown, isValidLayout, layout, layoutChild, moveFocus, moveFocus, nextFocus, paintChild, setFocus, setHorizontalScroll, setPositionChild, setScrollListener, setVerticalScroll, setVirtualExtent, sublayout, subpaint |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final long DEFAULT_MENU
public static final long DEFAULT_CLOSE
When ESC is pressed, the close()
method will be called, and a
menu item is also provided to do this.
Constructor Detail |
public Screen(Manager delegate)
delegate
- Manager this screen uses as layout delegate.public Screen(Manager delegate, long style)
Use this constructor to build a screen of a particular style.
delegate
- Manager this screen uses as layout delegate.style
- Style the screen uses for instantiationMethod Detail |
public void add(Field field)
Provided a field, this method invokes Manager.add(net.rim.device.api.ui.Field)
on this
screen's delegate manager, prompting the manager to add the field.
field
- Field to add.public final void addKeyListener(KeyListener listener)
listener
- Key event listener to handle key events passed to this
screen.public final void addTrackwheelListener(TrackwheelListener listener)
listener
- Trackwheel event listener to handle trackwheel events
pass to this screen.public void close()
By default, this method pops this screen, and if the
screen stack is empty, invokes
System.exit(0)
. Derived classes can override this
method to provide more particular functionality.
public void delete(Field field)
This method invokes Manager.delete(net.rim.device.api.ui.Field)
on this screen's delegate
manager to delete your provided field. Note that, after deletion, the
list of fields gets compacted.
field
- Field to delete.public void deleteRange(int start, int count)
This method invokes Manager.deleteRange(int, int)
on this screen's
delegate maanger to delete a range of fields. Note that, after deletion,
the list of fields gets compacted.
deleteRange
in class Manager
start
- Index of first field to delete.count
- Number of fields to delete.public void ensureRegionVisible(Field field, int x, int y, int width, int height)
Pass this method a field, and a region (extent), and this method attempts to scroll the screen to make as much of your region visible as possible.
If your region is smaller than the screen's visible extent, this method does as little work as possible to ensure the entire region appears on the screen.
If your region is larger than the screen's visible extent, this method produces the net effect of aligning the top left corner of your region with the top left corner of the screen's visible extent.
field
- Field that contains your region.x
- Left edge of the region.y
- Top edge of the region.width
- Width (in pixels) of the region.height
- Height (in pixels) of the region.public final UiEngine getUiEngine()
public void invalidateLayout()
This method prompts this screen's delegate manager to invalidate this screen's layout.
IllegalStateException
- If this method is called while the screen
is displayed.public boolean isDataValid()
The current implementation simply returns this.getDelegate().isDataValid()
.
isDataValid
in class Manager
true
if the data of all fields on this screen are valid or
false
if the data of at least one field on this screen is not valid.Manager.isDataValid()
,
getDelegate()
public final boolean isDisplayed()
This will return true iff this screen is on a display stack. Its position within the stack does not matter; this function does not indicate visibility. A screen is deemed displayed as soon as it is pushed onto the display stack, and not displayed as soon as it is popped from the display stack.
For Global Screens, this indicates whether this screen is the current one displayed. Any Global Screen that has been queued or that has had its display preempted by a higher priority Global Screen is deemed not displayed.
public boolean isFocusable()
This method invokes Manager.isFocusable()
on this screen's
delegate manager to determine whether the delegate manager (and thus the
screen) accepts the focus.
isFocusable
in class Manager
public boolean isGlobal()
public final void doPaint()
Invoke this method to force a repaint of this screen, its delegate manager, and all owned fields.
public Application getApplication()
public Manager getDelegate()
public int getFieldAtLocation(int x, int y)
This method invokes Manager.getFieldAtLocation(int, int)
on this
screen's delegate manager.
getFieldAtLocation
in class Manager
x
- Distance from left edge of screen's extent.y
- Distance from top edge of screen's extent.public void getFocusRect(XYRect rect)
Invoke this method to retrieve the extent of the current focus region. Notice that the coordinates expressed are local to this screen's region.
getFocusRect
in class Manager
rect
- Object to receive retrieved extent data.public Graphics getGraphics()
This method returns the graphics context for this screen, with a clipping region on top of the graphics stack set to the screen's entire extent.
The Graphics object returned by this call becomes invalid and should not be used after the end of the current UI event.
Note: We recommend against direct use of this method;
instead, use the various invalidate()
methods. It may be used for
direct drawing to the display when the screen contains no fields.
public Menu getMenu(int instance)
instance
- Instance of the desired menu; if this screen supports
only one menu, this may be ignored. By default, it is 0.onMenu(int)
,
#makeMenuWithContext
public Screen getScreenAbove()
public Screen getScreenBelow()
public void insert(Field field, int index)
Provided a field and an index, this method invokes
Manager.insert(Field,int)
on this screen's delegate manager,
prompting the manager to insert the field at the specified position in
its list.
field
- Field to insert.index
- Position in manager's list of controlled fields at which to
insert new field.protected boolean invokeAction(int action)
invokeAction(action)
is invoked on the
object returned from getDelegate()
. If Manager.invokeAction(int)
returns
true
then true
is returned. Otherwise, the following logic is performed:
action
is not Field.ACTION_INVOKE
then false
is returned.getLeafFieldWithFocus()
returns null
then false
is returned.true
is returned.invokeAction
in class Manager
action
- the action to be performed as described above.true
if the action was consumed; false
if the action
was not consumed.public MenuItem getDefaultMenuItem(int instance)
instance
- The instance of the desired menu. If your screen supports
only one menu, this may be ignored. By default, it is 0.public void invalidate()
This method marks a region of this screen as needing a repaint. The repainting is handled later by the main event dispatch thread.
Note: Any thread can safely invoke this method,
and does not require to synchronize on the
event lock
.
invalidate
in class Manager
x
- Left edge of the region in field coordinates.y
- Top edge of the region in field coordinates.width
- Width (in pixels) of the region.height
- Height (in pixels) of the region.Field.invalidate(int,int,int,int)
public void invalidate(int x, int y, int width, int height)
This method marks a region of this screen as needing a repaint. The repainting is handled later by the main event dispatch thread.
Note: Any thread can safely invoke this method,
and does not require to synchronize on the
event lock
.
invalidate
in class Manager
x
- Left edge of the region in ContentRect coordinates.y
- Top edge of the region in ContentRect coordinates.width
- Width (in pixels) of the region.height
- Height (in pixels) of the region.Field.invalidate(int,int,int,int)
public void invalidateAll(int x, int y, int width, int height)
This method marks a region of this screen as needing a repaint. The repainting is handled later by the main event dispatch thread.
Note: Any thread can safely invoke this method,
and does not require to synchronize on the
event lock
.
invalidateAll
in class Field
x
- Left edge of the region in field coordinates.y
- Top edge of the region in field coordinates.width
- Width (in pixels) of the region.height
- Height (in pixels) of the region.Field.invalidate(int,int,int,int)
public boolean isDirty()
This method invokes Manager.isDirty()
on this screen's delegate
manager.
setDirty(boolean)
was invoked (which is also passed on to the delegate
manager); otherwise, false.public boolean isMuddy()
This method invokes Manager.isMuddy()
on this screen's delegate
manager.
public boolean isSelecting()
This method invokes Manager.isSelecting()
on this screen's
delegate manager.
isSelecting
in class Manager
protected boolean openDevelopmentBackdoor(int backdoorCode)
Derived classes should override this method to provide support for development backdoor key-sequences.
Useful for backdoors in non-production devices.
backdoorCode
- Backdoor code to open.protected boolean openProductionBackdoor(int backdoorCode)
Derived classes should override this method to provide support for production backdoor key-sequences.
Useful for backdoors in production devices.
backdoorCode
- Backdoor code to open.protected boolean keyChar(char c, int status, int time)
This method invokes Manager.keyChar(char, int, int)
on this screen's delegate
manager.
c
- Character generated.status
- Modifier key status.time
- Number of milliseconds since the device was turned on.protected boolean keyCharUnhandled(char key, int status, int time)
Derived classes should override this event to provide custom handling of keyChar events that remain unhandled by any of their controlled fields.
key
- Character generated.status
- Modifier key status.time
- Number of milliseconds since the device was turned on.ESCAPE
key, then this method returns true if this screen closes; otherwise,
this method returns false.protected boolean keyControl(char c, int status, int time)
This method invokes Manager.keyControl(char, int, int)
on this screen's
delegate manager.
keyControl
in class Manager
c
- Character generated.status
- Modifier key status.time
- Number of milliseconds since the device was turned on.protected boolean keyDown(int keycode, int time)
This method invokes Manager.keyDown(int, int)
on this screen's delegate
manager.
keycode
- Key scan code of the key pressed, ignoring any effects of
modifier keys.time
- Number of milliseconds since the device was turned on.protected boolean keyUp(int keycode, int time)
This method invokes Manager.keyUp(int, int)
on this screen's delegate
manager.
keycode
- Key scan code of the key released, ignoring any effects of
modifier keys.time
- Number of milliseconds since the device was turned on.protected boolean keyRepeat(int keycode, int time)
This method invokes Manager.keyRepeat(int, int)
on this screen's
delegate manager.
keycode
- Key scan code of key to repeat, ignoring any effects of
modifier keys.time
- Number of milliseconds since the device was turned on.protected boolean keyStatus(int keycode, int time)
This method invokes Manager.keyStatus(int, int)
on this screen's
delegate manager.
keycode
- Key scan code of character shown, before any effects of
modifier keys.time
- Number of milliseconds since the device was turned on.protected final void layoutDelegate(int width, int height)
width
- Amount of available horizontal space.height
- Amount of available vertical space.protected void makeMenu(Menu menu, int instance)
menu
- Menu to which items should be added.instance
- The instance of the desired menu. If your screen supports
only one menu, this may be ignored. By default, it is 0.onMenu(int)
public boolean onClose()
The default implementation is activated by specifying
DEFAULT_CLOSE
. It will call onSavePrompt()
if the screen
is dirty, then call close()
if successful.
protected void onDisplay()
This method is invoked by the system after this screen is pushed onto the stack and layout has been done, but before any painting occurs.
If no controlled field has the focus, this method attempts to assign the focus to the first field that will accept it, starting with the first field in the delegate manager's field list. Additionally, this method makes the focus visible, and resets scrolling to 0 if possible (ensuring the focussed region stays on the screen).
The complementary callback is onUndisplay()
.
onExposed()
,
Field.onVisibilityChange(boolean)
protected void onExposed()
Subclasses of screen should override this method for special handling.
The complimenting callback is onObscured()
.
onDisplay()
,
Field.onVisibilityChange(boolean)
protected void onFocus(int direction)
This method invokes Manager.onFocus(int)
on this screen's delegate
manager, thus starting with the delegate manager's controlled field list,
looking for a field to give the focus. This method passes the focus to
the first found field that accepts it.
direction
- If 1, start at the top of the delegate manager's field
list and search foward. If -1, start at the bottom of the delegate
manager's field list and search backward.protected void onFocusNotify(boolean focus)
focus
- true
if this screen has gained the focus or false
if this screen has lost focus.public boolean onMenu(int instance)
If you specify the DEFAULT_MENU
style, this method creates a
menu and call #makeMenuWithContext(Menu,int)
.
Then menu.show()
will be invoked, and
MenuItem.run()
used to activate the selected item.
Note: Please use this instead of overriding
trackwheelClick(int, int)
; this may be called in other events, such as a
menu button.
instance
- Instance of the menu to display. If your screen supports
only one menu, this may be ignored. By default, it is 0.protected void onMenuDismissed(Menu menu)
onMenuDismissed(Menu)
on all the fields and managers
that are currently in focus. It also calls onMenuDismissed().onMenuDismissed
in class Field
menu
- Menu to be dismissedprotected void onMenuDismissed()
onMenuDismissed
in class Field
protected void onObscured()
Derived classes should override this method for special handling.
The complimenting callback is onExposed()
.
onObscured
in class Field
onUndisplay()
,
Field.onVisibilityChange(boolean)
protected boolean onSave()
If isDataValid()
returns true, this method then calls
save()
(and displays an error dialog if save()
throws an
IOException
).
protected boolean onSavePrompt()
The default implementation is empty. Overriding classes should provide a dialog and call onSave if the user has chosen to save. If the return is true, the framework will call onClose.
MainScreen.onSavePrompt()
protected void onUndisplay()
Derived classes should override this method for special handling.
The complimenting callback is onDisplay()
.
onUndisplay
in class Manager
onObscured()
,
Field.onVisibilityChange(boolean)
protected void onUnfocus()
This method invokes Manager.onUnfocus()
on this screen's
delegate manager to remove the focus from this screen.
protected void paint(Graphics graphics)
Invoke this method to prompt the screen to paint itself. If you
extend Screen to create a custom layout, you may want to implement the
base class's Manager.subpaint(net.rim.device.api.ui.Graphics)
method, as this method invokes it.
This method also draws the focus indicator as required.
graphics
- Graphics context used for painting.protected void paintBackground(Graphics graphics)
The system calls this method before painting begins in order to clear this screen's background, initializing your provided graphics context to this screen's extent.
By default, this method simple invokes Graphics.clear()
; for
more complex handling, you should override this method in extending
classes.
Field
graphics
- Graphics context used to draw the background.public void replace(Field oldField, Field newField)
Screen
and replaces it with another field.
This method simply invokes replace(oldField, newField)
on the Manager
returned from getDelegate()
.
See Manager.replace(Field, Field)
for more details about how this method behaves,
including exceptions that can be thrown.
oldField
- the field to be replacednewField
- the field to replace itpublic void save() throws IOException
public void removeFocus()
protected void setBackdoorAltStatus(boolean altStatus)
altStatus
- True to require ALT key sequences, or false if un-ALT'd
keystrokes can be used as backdoors.protected void setDefaultClose(boolean provideDefaultClose)
provideDefaultClose
- Flag for specifying if menu
is to include a close itemprotected boolean navigationClick(int status, int time)
This method passes on navigation click events to this
screen's delegate manager by invoking Manager.navigationClick(int, int)
.
navigationClick
in class Manager
status
- State of the modifier keys.time
- Number of milliseconds since the device was turned on.protected boolean navigationMovement(int dx, int dy, int status, int time)
navigationMovement
in class Manager
dx
- Magnitude of navigational motion: negative for a move left
and postive for a move right.dy
- Magnitude of navigational motion: negative for an upwards
move, and positive for a downwards move.status
- Modifier key status at time of move.time
- Number of milliseconds since the device was turned on.protected boolean navigationUnclick(int status, int time)
This method passes on navigation unclick events to
this screen's delegate manager by invoking
Manager.navigationUnclick(int, int)
.
navigationUnclick
in class Manager
status
- State of the modifier keys.time
- Number of milliseconds since the device was turned on.protected boolean trackwheelClick(int status, int time)
This method passes on trackwheel click events to this
screen's delegate manager by invoking Manager.trackwheelClick(int, int)
.
trackwheelClick
in class Manager
status
- State of the modifier keys.time
- Number of milliseconds since the device was turned on.protected boolean trackwheelClickUnhandled(int status, int time)
Use this method to handle trackwheel click events that remained
unhandled after invoking trackwheelClick(int, int)
.
status
- Modifier key status (currently ignored)time
- Number of milliseconds since the device was turned on
(currently ignored).protected boolean trackwheelRoll(int amount, int status, int time)
Manager
amount
- Number of scrolling positions: negative for an upwards
roll, and positive for a downwards roll.status
- Modifier key status at time of roll.time
- Number of milliseconds since the device was turned on.protected boolean trackwheelUnclick(int status, int time)
This method passes on trackwheel unclick events to
this screen's delegate manager by invoking
Manager.trackwheelUnclick(int, int)
.
trackwheelUnclick
in class Manager
status
- State of the modifier keys.time
- Number of milliseconds since the device was turned on.public int getFieldCount()
This method invokes Manager.getFieldCount()
on this screen's
delegate manager to retrieve the number of fields it controls.
getFieldCount
in class Manager
public Field getField(int index)
This method invokes Manager.getField(int)
on this screen's
delegate manager to retrieve a particular field from its list.
index
- Index of field to retrieve.IndexOutOfBoundsException
- If index not valid.public Field getFieldWithFocus()
This method invokes Manager.getFieldWithFocus()
on this
screen's delegate manager to retrieve the currently focussed field.
getFieldWithFocus
in class Manager
public int getFieldWithFocusIndex()
This method invokes Manager.getFieldWithFocusIndex()
on this
screen's delegate manager to retrieve the currently focussed field.
getFieldWithFocusIndex
in class Manager
public Field getLeafFieldWithFocus()
This method invokes Manager.getLeafFieldWithFocus()
on this
screen's delegate manager to retrieve the (bottom-most, non-manager) leaf
field that has the focus.
getLeafFieldWithFocus
in class Manager
public final void removeKeyListener(KeyListener listener)
listener
- Key event listener to de-register for this screen.public final void removeTrackwheelListener(TrackwheelListener listener)
listener
- Trackwheel event listener to de-register for this screen.public final boolean scroll(int direction)
The parameter passed to this method indicates the direction and amount of movement required.
To control vertical movement use Manager.UPWARD
and Manager.DOWNWARD
to move the focus one screen up or down; use Manager.TOPMOST
and
Manager.BOTTOMMOST
to move the focus all the way to the top edge or
bottom edge of the manager's region.
To control horizontal movement use Manager.LEFTWARD
and
Manager.RIGHTWARD
to move the focus one screen left or right; use
Manager.LEFTMOST
and Manager.RIGHTMOST
to move the focus all the way to
the left or right edge of the manager's region.
You can combine one vertical movement constant and one horizontal movement constant to effectively move the focus diagonally. However, this method performs the vertical movement first, and then the horizontal movement, in order to simulate diagonal motion.
Note: Focus movement is constrained in all directions by the extent of this manager. If the focus is currently less than one screen from an edge of the manager's extent it must move towards, it stops at that edge. Also, this method scrolls the visible region of this manager as required to ensure the focus remains visible.
direction
- Combination of constant values to indicate in which
direction, and how much, the focus is to move.public void setDirty(boolean dirty)
This method invokes Manager.setDirty(boolean)
on this screen's
delegate manager to clean (or dirty) all this screen's controlled fields.
dirty
- True if dirtying the fields; false if cleaning them.public void setFocus()
This method assigns the focus to the delegate manager through
invoking Field.setFocus()
on the delegete manager.
net.rim.device.api.ui.Field
IllegalStateException
- If the field is not attached to a screen.public final boolean setFocus(Field field, int x, int y, int status, int time)
field
- Field in which to place the focus.x
- Distance from left edge of screen.y
- Distance from top edge of screen.status
- State of modifier keys.time
- Number of milliseconds since the device was turned on.IllegalArgumentException
- If field parameter does not belong to
this screenpublic void setHorizontalQuantization(int horizontalQuanta)
When a screen's layout manager or delegate is laying out components on the screen, the layout manager uses the horizontal quantization to determine how many rows can be fully displayed on a screen. By default, the delegate uses the font size as the horizontal quantization value. For example: You want to display rows of text that use a font size of 11 on a screen that is 140 pixels in height. By default, the screen delegate can fully display 12 of these rows.
You may want to set the value if you are laying out non-text rows.
The actual horizontal display length will be a multiple of the value you specify.
setHorizontalQuantization
in class Manager
horizontalQuanta
- Horizontal quantization in pixels.protected final void setPositionDelegate(int x, int y)
x
- Left edge position for this screen's delegate.y
- Top edge position for this screen's delegate.public void setTrackballFilter(int filter)
filter
- -100 to 100 or Integer.MAX_VALUEIllegalArgumentException
- if trackballSensitivityXOffset is not -100 to 100 or Integer.MAX_VALUE.public void setTrackballSensitivityXOffset(int trackballSensitivityXOffset)
trackballSensitivityXOffset
- -100 to 100 or Trackball.SENSITIVITY_UNSETIllegalArgumentException
- if trackballSensitivityXOffset is not -100 to 100 or Integer.MAX_VALUE.public void setTrackballSensitivityYOffset(int trackballSensitivityYOffset)
trackballSensitivityXOffset
- -100 to 100 or Trackball.SENSITIVITY_UNSETIllegalArgumentException
- if trackballSensitivityXOffset is not -100 to 100 or Integer.MAX_VALUE.public void setVerticalQuantization(int verticalQuanta)
When a screen's layout manager or delegate is laying out components on the screen, the layout manager uses the vertical quantization to determine how many columns can be fully displayed.
By default, the delegate uses the font size as the vertical quantization value.
The actual vertical display length will be a multiple of the value you specify.
setVerticalQuantization
in class Manager
verticalQuanta
- Vertical quantization in pixels.setHorizontalQuantization(int)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 1999-2006 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.