javax.microedition.lcdui.Displayable Maven / Gradle / Ivy
/*
* MicroEmulator
* Copyright (C) 2001 Bartek Teodorczyk
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package javax.microedition.lcdui;
import java.util.Vector;
import org.microemu.device.Device;
import org.microemu.device.DeviceFactory;
public abstract class Displayable
{
protected Device device;
boolean sizeChangedDeferredRequest;
Display currentDisplay = null;
boolean fullScreenMode;
private Ticker ticker;
// TODO make private
protected StringComponent title;
// TODO make private
protected int viewPortY;
// TODO make private
protected int viewPortHeight;
/**
* @associates Command
*/
private Vector commands = new Vector();
private CommandListener listener = null;
Displayable(String title)
{
this.title = new StringComponent(title);
this.device = DeviceFactory.getDevice();
this.sizeChangedDeferredRequest = false;
this.fullScreenMode = false;
}
public void addCommand(Command cmd)
{
// Check that its not the same command
for (int i=0; i