public class MenuBarDropDown extends Window
MenuItem col1[] = // note that the first String is always skipped { new MenuItem("Record"), new MenuItem("NewEvent"), new MenuItem("Delete Note..."), new MenuItem("Purge..."), new MenuItem(), // create a dotted line new MenuItem("Beam Event"), }; MenuBarDropDown pop = new MenuBarDropDown(10,10,col1); pop.popupNonBlocking(); // a PRESSED event is generated when a item is selected. The Window // is closed when the user clicks outside or selects an item. Use the getSelectedIndex // method to discover the index of the MenuItem array that was selected (-1 if none).Note: the menu items must fit on screen. No clipping is applied. Also, the font and colors can be changed if desired.
Control.TranslucentShape
_controlEvent, _dragEvent, _focus, _keyEvent, _mouseEvent, _multiEvent, _penEvent, androidBorderThickness, beepIfOut, blocking, borderStyle, cancelPenUp, canDrag, dragThreshold, fadeOtherWindows, fadeValue, firstFocus, flickEnabled, focusOnPenUp, footerColor, footerH, gradientTitleEndColor, gradientTitleStartColor, headerColor, highlighted, highResPrepared, HORIZONTAL_GRADIENT, ignoreEventOfType, keyHook, lastShiftY, lastSwappedContainer, mainSwapContainer, menubar, multiTouching, needsPaint, NO_BORDER, ORIENTATION_INVERTED, ORIENTATION_LANDSCAPE, ORIENTATION_PORTRAIT, popped, RECT_BORDER, repaintOnSwap, robot, ROUND_BORDER, rTitle, sameBackgroundColor, shiftH, shiftY, SIP_BOTTOM, SIP_HIDE, SIP_SHOW, SIP_TOP, TAB_BORDER, TAB_ONLY_BORDER, tempTitle, title, titleAlign, titleColor, titleFont, titleGap, topMost, VERTICAL_GRADIENT, zStack
alwaysEraseBackground, BACKGROUND_CYLINDRIC_SHADED, BACKGROUND_SHADED, BACKGROUND_SHADED_INV, BACKGROUND_SOLID, backgroundStyle, BORDER_LOWERED, BORDER_NONE, BORDER_RAISED, BORDER_ROUNDED, BORDER_SIMPLE, BORDER_TOP, borderColor, borderRadius, children, controlFound, finishedStart, ignoreOnAddAgain, ignoreOnRemove, insets, lastH, lastScreenWidth, lastW, numChildren, started, tabOrder, tail, TRANSITION_TIME
AFTER, alphaValue, appId, appObj, asContainer, asWindow, backColor, BEFORE, BOTTOM, BOTTOM_OF, BRIGHTER_BACKGROUND, callListenersOnAllTargets, CENTER, CENTER_OF, clearValueInt, clearValueStr, DARKER_BACKGROUND, DP, effect, enableUpdateScreen, esce, eventsEnabled, FILL, fillColor, FIT, floating, fm, fmH, focusHandler, focusLess, focusOnPenDown, focusTraversable, font, FONTSIZE, foreColor, height, ignoreInsets, isHighlighting, isTablet, KEEP, keepDisabled, keepEnabled, LEFT, next, nextTabControl, npParts, offscreen, offscreen0, onEventFirst, parent, PARENTSIZE, PARENTSIZEMAX, PARENTSIZEMIN, PREFERRED, prev, RANGE, repositionAllowed, RIGHT, RIGHT_OF, SAME, SCREENSIZE, SCREENSIZEMAX, SCREENSIZEMIN, setFont, setH, setRel, setW, setX, SETX_NOT_SET, setY, tempW, textShadowColor, TOP, translucentShape, transparentBackground, uiAdjustmentsBasedOnFontHeightIsSupported, uiAndroid, UICONST, uiFlat, uiHolo, uiMaterial, uiVista, visible, width, WILL_RESIZE, x, y
Constructor and Description |
---|
MenuBarDropDown(int x,
int y,
MenuItem[] items)
Constructs a MenuBarDropDown that will show at the given x,y position the given items.
|
Modifier and Type | Method and Description |
---|---|
protected int |
getNextSelectionIndex(KeyEvent ke)
Returns the index of the next menu item that is to be selected based on the direction of the KeyEvent.
|
int |
getSelectedIndex()
Returns the selected index when this window was closed or -1 if non was selected
|
int |
getYPos(int index) |
protected boolean |
handleFocusChangeKeys(KeyEvent ke)
Called by the main event handler to handle the focus change keys.
|
Control |
handleGeographicalFocusChangeKeys(KeyEvent ke)
Used by the main event loop to give the currently focused control an opportunity to act directly on
the KeyEvent.
|
protected void |
loadBehind()
This method repaints all windows from bottom to top.
|
protected boolean |
onClickedOutside(PenEvent event)
Close the popup list with a click outside its bounds
|
protected void |
onColorsChanged(boolean colorsChanged)
Called after a setEnabled, setForeColor and setBackColor and when a control has
been added to a Container.
|
void |
onEvent(Event event)
Called to process key, pen, control and other posted events.
|
protected void |
onFontChanged()
Change the font and recompute some parameters
|
void |
onPaint(Graphics g)
Draws the border (if any).
|
protected void |
onPopup()
Setup some important variables
|
protected void |
postPopup()
Placeholder called after the popup is done and after the repaint of this window.
|
protected void |
postUnpop()
Placeholder called after the unpop is done and after the repaint of the other window.
|
void |
screenResized()
Called when the screen is resized, probably caused by a rotation.
|
void |
setCursorColor(int c)
Sets the cursor color.
|
int |
setSelectedIndex(int index)
Selects the given index.
|
static MenuItem[] |
strings2items(java.lang.String[] strings)
Converts an old Menu format into the new one.
|
_doPaint, _postEvent, destroyZStack, drawHighlight, getBorderStyle, getClientRect, getClientRect, getDefaultDragThreshold, getFocus, getHighlighted, getPopupCount, getPreferredHeight, getPreferredWidth, getTitleFont, getTopMost, isScreenShifted, isSipShown, isSipShown4D, isTopMost, isVisible, makeUnmovable, onRobotKey, onUnpop, paintTitle, paintWindowBackground, popup, popupMenuBar, popupNonBlocking, postPressedEvent, pumpEvents, removeFocus, repaintActiveWindows, resize, resizeHeight, resizeWidth, setBorderStyle, setDeviceTitle, setFocus, setGrabPenEvents, setHighlighted, setMenuBar, setOrientation, setSIP, setTitle, setTitleFont, shiftScreen, swap, swapFocus, unpop, validate
add, add, add, add, add, broadcastEvent, clear, fillBackground, findChild, findNearestChild, findNextFocusControl, getBorderRadius, getChildren, getChildrenCount, getFirstChild, getFocusableControls, getInsets, incLastX, incLastY, initUI, isPressed, moveFocusToNextControl, moveFocusToNextEditable, onAddAgain, onRemove, onSwapFinished, paintChildren, remove, removeAll, setBorderRadius, setEnabled, setFocusTraversable, setHighlighting, setInsets, setPressColor, setPressed, swapToTopmostWindow
_onEvent, addEnabledStateListener, addFocusListener, addFontChangeHandler, addGridListener, addHandler, addHighlightListener, addKeyListener, addListContainerListener, addMouseListener, addMultiTouchListener, addPenListener, addPressListener, addPushNotificationListener, addSizeChangeHandler, addTimer, addTimer, addTimerListener, addValueChangeHandler, addWindowListener, bringToFront, changeHighlighted, contains, drawTranslucentBackground, getAbsoluteRect, getBackColor, getDoEffect, getEffectH, getEffectW, getEffectX, getEffectY, getEventListeners, getFont, getForeColor, getGap, getGraphics, getHeight, getNext, getParent, getParentWindow, getPos, getPressedEvent, getPrev, getRect, getSize, getTextShadowColor, getWidth, getX, getX2, getY, getY2, hadParentScrolled, hasFocus, internalSetEnabled, intXYWH, isActionEvent, isChildOf, isDisplayed, isEnabled, isFloating, isInsideOrNear, isObscured, isVisibleAndInside, onBoundsChanged, onWindowPaintFinished, post, postEvent, releaseScreenShot, removeEnabledStateListener, removeFocusListener, removeGridListener, removeHandler, removeHighlightListener, removeKeyListener, removeListContainerListener, removeMouseListener, removeMultiTouchListener, removePenListener, removePressListener, removePushNotificationListener, removeTimer, removeTimerListener, removeWindowListener, repaint, repaintNow, reposition, reposition, repositionChildren, requestFocus, resetSetPositions, resetStyle, safeRepaintNow, safeUpdateScreen, sendToBack, setBackColor, setBackForeColors, setDoEffect, setFloating, setFocusLess, setFont, setForeColor, setNinePatch, setNinePatch, setRect, setRect, setRect, setRect, setSet, setTextShadowColor, setTranslucent, setVisible, showTip, takeInitialScreenShot, takeScreenShot, translateFromOrigin, uiStyleChanged, updateScreen, updateTemporary, willOpenKeyboard
public MenuBarDropDown(int x, int y, MenuItem[] items)
public static MenuItem[] strings2items(java.lang.String[] strings)
protected void onFontChanged()
onFontChanged
in class Control
public void screenResized()
Window
screenResized
in class Window
public int setSelectedIndex(int index)
public int getYPos(int index)
public int getSelectedIndex()
protected void postPopup()
Window
protected void postUnpop()
Window
protected boolean onClickedOutside(PenEvent event)
onClickedOutside
in class Window
protected void loadBehind()
Window
loadBehind
in class Window
public void onEvent(Event event)
Control
public void setCursorColor(int c)
protected void onColorsChanged(boolean colorsChanged)
Control
onColorsChanged
in class Container
public void onPaint(Graphics g)
Container
super.onPaint(g);
, or the border will not be drawn.protected boolean handleFocusChangeKeys(KeyEvent ke)
Window
handleFocusChangeKeys
in class Window
public Control handleGeographicalFocusChangeKeys(KeyEvent ke)
Control
handleGeographicalFocusChangeKeys
in class Control
ke
- The KeyEvent to be processedSettings.geographicalFocus
protected int getNextSelectionIndex(KeyEvent ke)
ke
- The key event