com.sybase.uep.bobclient.screens
Class FileExplorerScreen

java.lang.Object
  extended by net.rim.device.api.ui.Field
      extended by net.rim.device.api.ui.Manager
          extended by net.rim.device.api.ui.Screen
              extended by net.rim.device.api.ui.container.FullScreen
                  extended by net.rim.device.api.ui.container.MainScreen
                      extended by com.sybase.uep.bobclient.screens.BaseBOBScreen
                          extended by com.sybase.uep.bobclient.screens.FileExplorerScreen
All Implemented Interfaces:
IBOBScreen, java.lang.Runnable, net.rim.device.api.ui.component.TreeFieldCallback

public final class FileExplorerScreen
extends BaseBOBScreen
implements net.rim.device.api.ui.component.TreeFieldCallback

File explorer screen


Field Summary
static java.lang.String DEFAULT_CLOSE_MENU_LABEL
           
static net.rim.device.api.system.Bitmap DEFAULT_FOLDER_ICON
           
static net.rim.device.api.system.Bitmap DEFAULT_IMAGE_ICON
           
static java.lang.String DEFAULT_NO_FILES_TREE_LABEL
           
static java.lang.String DEFAULT_REFRESH_MENU_LABEL
           
static java.lang.String DEFAULT_SELECT_FILE_MENU_LABEL
           
static java.lang.String DEFAULT_TITLE_LABEL
           
static java.lang.String DEFAULT_VIEW_FILE_MENU_LABEL
           
 
Fields inherited from class com.sybase.uep.bobclient.screens.BaseBOBScreen
_appLogger, KEY
 
Fields inherited from class net.rim.device.api.ui.container.MainScreen
NO_STATUS_SEPARATOR, NO_TITLE_SEPARATOR
 
Fields inherited from class net.rim.device.api.ui.Screen
DEFAULT_CLOSE, DEFAULT_MENU, NO_SYSTEM_MENU_ITEMS
 
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_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
 
Constructor Summary
FileExplorerScreen()
          File explorer constructor
FileExplorerScreen(ITextInput textinput)
          File explorer constructor
FileExplorerScreen(ITextInput textinput, boolean showImageOnly)
          File explorer constructor
 
Method Summary
protected  void defineScreen()
          This is called by the run method All calls to add widgets to screen should be added in this method
 void drawTreeItem(net.rim.device.api.ui.component.TreeField treeField, net.rim.device.api.ui.Graphics graphics, int node, int y, int width, int indent)
          Invoked when a particular tree item requires painting.
 FontStyle getScreenFontStyle()
          Get this screen's font style
 boolean keyChar(char c, int status, int time)
          Overrides default.
 boolean navigationClick(int status, int time)
          Overrides default implementation.
 void refresh()
          Refresh the file explore view
 void setScreenFontStyle(FontStyle fontStyle)
          Set the font style for this screen
 
Methods inherited from class com.sybase.uep.bobclient.screens.BaseBOBScreen
addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuAction, addMenuSeperator, addMenuSeperator, addReferencedMBO, addSourceConnectionReference, addSpacer, askMobileDataControlRefresh, closeScreen, deleteMenuAction, getFooter, getLabelMsgString, getLabelMsgValue, getMenuGroup, getMenuItemByName, getMenuItemByNameAndDisable, getParentScreen, getReferencedMBOList, getScreenContext, getSyncProgressBar, getUIController, initAppLogger, initScreenContext, isCache, isSynchronizing, makeMenu, onFocusNotify, refreshScreenContext, run, setFooter, setFooterBorderColor, setFooterFontStyle, setFooterHasBorder, setFooterLabel, setHeaderFooter, setIsCache, setLabelMsgValue, setParentScreen, setProperty, setProperty, setSynchronizing
 
Methods inherited from class net.rim.device.api.ui.container.MainScreen
addMenuItem, getField, getFieldCount, getFieldWithFocus, getFieldWithFocusIndex, getMainManager, keyCharUnhandled, onSavePrompt, removeAllMenuItems, removeMenuItem, setBanner, setId, setStatus, setTitle, setTitle, setTitle, setTitle
 
Methods inherited from class net.rim.device.api.ui.container.FullScreen
sublayout
 
Methods inherited from class net.rim.device.api.ui.Screen
add, addKeyListener, addScreenUiEngineAttachedListener, addTrackwheelListener, close, delete, deleteRange, dispatchKeyEvent, doLayout, doPaint, ensureRegionVisible, getAccessibleContext, getApplication, getDefaultMenuItem, getDelegate, getFieldAtLocation, getFocusRect, getGraphics, getLeafFieldWithFocus, getMenu, getScreenAbove, getScreenBelow, getUiEngine, getVirtualKeyboard, insert, invalidate, invalidate, invalidateAll, invalidateLayout, invokeAction, isDataValid, isDirty, isDisplayed, isFocus, isFocusable, isGlobal, isGlobalStatus, isMuddy, isObscured, isSelecting, keyControl, keyDown, keyRepeat, keyStatus, keyUp, layoutDelegate, navigationMovement, navigationUnclick, onClose, onDisplay, onExposed, onFocus, onMenu, onMenuDismissed, onMenuDismissed, onObscured, onSave, onUiEngineAttached, onUndisplay, onUnfocus, openDevelopmentBackdoor, openProductionBackdoor, paint, paintBackground, removeFocus, removeKeyListener, removeScreenUiEngineAttachedListener, removeTrackwheelListener, replace, save, scroll, setBackdoorAltStatus, setDefaultClose, setDirty, setFocus, setFocus, setFocus, setHorizontalQuantization, setPositionDelegate, setTrackballFilter, setTrackballSensitivityXOffset, setTrackballSensitivityYOffset, setVerticalQuantization, touchEvent, trackwheelClick, trackwheelClickUnhandled, trackwheelRoll, trackwheelUnclick, updateDisplay
 
Methods inherited from class net.rim.device.api.ui.Manager
clearCustomScrollArrows, deleteAll, getHorizontalScroll, getPreferredHeightOfChild, getPreferredWidthOfChild, getVerticalScroll, getVirtualHeight, getVirtualWidth, getVisibleHeight, getVisibleWidth, invalidateFieldRange, isDownArrowShown, isUpArrowShown, isValidLayout, layout, layoutChild, moveFocus, moveFocus, moveFocus, nextFocus, nextFocus, paintChild, setFocus, setHorizontalScroll, setNonfocusableOverride, setPositionChild, setScrollListener, setVerticalScroll, setVirtualExtent, subpaint
 
Methods inherited from class net.rim.device.api.ui.Field
drawFocus, drawHighlightRegion, fieldChangeNotify, focusAdd, focusChangeNotify, focusRemove, getBackground, getBackground, getBorder, getBorder, getBorder, getChangeListener, getContentHeight, getContentLeft, getContentRect, getContentRect, getContentTop, getContentWidth, getContextMenu, getContextMenu, getCookie, getExtent, getExtent, getFieldStyle, getFocusListener, getFont, getHeight, getIndex, getLeft, getManager, getMargin, getMarginBottom, getMarginLeft, getMarginRight, getMarginTop, getOriginal, getPadding, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getPreferredHeight, getPreferredWidth, getScreen, getState, getStyle, getTop, getVisualState, getWidth, isEditable, isPasteable, isSelectable, isSelectionCopyable, isSelectionCutable, isSelectionDeleteable, isSpellCheckable, isStyle, isVisible, makeContextMenu, makeContextMenu, onVisibilityChange, paste, select, selectionCopy, selectionCut, selectionDelete, setBackground, setBackground, setBorder, setBorder, setBorder, setBorder, setBorder, setChangeListener, setCookie, setEditable, setExtent, setFocusListener, setFont, setFont, setMargin, setMargin, setMuddy, setNonSpellCheckable, setPadding, setPadding, setPosition, setVisualState, updateLayout
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_FOLDER_ICON

public static final net.rim.device.api.system.Bitmap DEFAULT_FOLDER_ICON

DEFAULT_IMAGE_ICON

public static final net.rim.device.api.system.Bitmap DEFAULT_IMAGE_ICON

DEFAULT_TITLE_LABEL

public static final java.lang.String DEFAULT_TITLE_LABEL

DEFAULT_NO_FILES_TREE_LABEL

public static final java.lang.String DEFAULT_NO_FILES_TREE_LABEL

DEFAULT_CLOSE_MENU_LABEL

public static final java.lang.String DEFAULT_CLOSE_MENU_LABEL

DEFAULT_VIEW_FILE_MENU_LABEL

public static final java.lang.String DEFAULT_VIEW_FILE_MENU_LABEL

DEFAULT_SELECT_FILE_MENU_LABEL

public static final java.lang.String DEFAULT_SELECT_FILE_MENU_LABEL

DEFAULT_REFRESH_MENU_LABEL

public static final java.lang.String DEFAULT_REFRESH_MENU_LABEL
Constructor Detail

FileExplorerScreen

public FileExplorerScreen()
File explorer constructor


FileExplorerScreen

public FileExplorerScreen(ITextInput textinput)
File explorer constructor

Parameters:
textinput - - text input to populate file path

FileExplorerScreen

public FileExplorerScreen(ITextInput textinput,
                          boolean showImageOnly)
File explorer constructor

Parameters:
textinput - - text input to populate file path
showImageOnly - - if true show only images, otherwise show all files
Method Detail

defineScreen

protected void defineScreen()
This is called by the run method All calls to add widgets to screen should be added in this method

Specified by:
defineScreen in class BaseBOBScreen

refresh

public void refresh()
Refresh the file explore view

Specified by:
refresh in interface IBOBScreen
Overrides:
refresh in class BaseBOBScreen
See Also:
IBOBScreen.refresh()

drawTreeItem

public void drawTreeItem(net.rim.device.api.ui.component.TreeField treeField,
                         net.rim.device.api.ui.Graphics graphics,
                         int node,
                         int y,
                         int width,
                         int indent)
Invoked when a particular tree item requires painting.

The graphics context passed to this method represents the entire tree, not just the row for repainting. Accordingly, the y parameter indicates how far down in the field's extent the repaint should occur.

Specified by:
drawTreeItem in interface net.rim.device.api.ui.component.TreeFieldCallback
Parameters:
treeField - Tree field that requires repainting.
graphics - Graphics context for the list.
node - Node to draw.
y - Distance from the top of the tree field for painting.
width - Width of the area remaining to draw the item (accounting for the indent).
indent - Number of pixels that should be reserved due to the nesting depth of the current item.

getScreenFontStyle

public FontStyle getScreenFontStyle()
Get this screen's font style

Returns:
FontStyle object

setScreenFontStyle

public void setScreenFontStyle(FontStyle fontStyle)
Set the font style for this screen

Parameters:
key - - font style key

keyChar

public boolean keyChar(char c,
                       int status,
                       int time)
Overrides default. Enter key will take action on directory/file. Escape key will go up one directory or close application if at top level.

Overrides:
keyChar in class BaseBOBScreen
Parameters:
c - Character generated.
status - Modifier key status.
time - Number of milliseconds since the device was turned on.
See Also:
Screen.keyChar(char key,int status,int time)

navigationClick

public boolean navigationClick(int status,
                               int time)
Overrides default implementation. Performs the select action if the trackwheel was clicked; otherwise, the default action occurs.

Overrides:
navigationClick in class net.rim.device.api.ui.Screen
Parameters:
status - State of the modifier keys.
time - Number of milliseconds since the device was turned on.