package com.nutiteq.ui; import javax.microedition.lcdui.Graphics; import com.nutiteq.components.ZoomRange; /** * Element for displaying zoom range and current zoom on screen. Zoom indicator * will be set visible, for the time defined in {@link #displayTime()}, after * zoom action (zoom in/out) has occurred. */ public interface ZoomIndicator { /** * Is this element visible * * @return is element visible */ boolean isVisible(); /** * Paint element on screen * * <strong>Note:</strong> if you change clip on graphics, please restore it to * previous state. * * @param g * graphics object to paint on * @param currentZoom * current zoom * @param displayWidth * display width * @param displayHeight * display height */ void paint(Graphics g, int currentZoom, int displayWidth, int displayHeight); /** * Set zoom range that is available * * @param zoomRange * available zoom range */ void setZoomRange(ZoomRange zoomRange); /** * How long should element be visible after zoom keys have been pressed * * @return display time in milliseconds */ long displayTime(); /** * Set element visible * * @param visible * show/hide this element from screen */ void setVisible(boolean visible); }