View Javadoc

1   /*
2    *  MicroEmulator
3    *  Copyright (C) 2005 Bartek Teodorczyk <barteo@barteo.net>
4    *
5    *  This library is free software; you can redistribute it and/or
6    *  modify it under the terms of the GNU Lesser General Public
7    *  License as published by the Free Software Foundation; either
8    *  version 2.1 of the License, or (at your option) any later version.
9    *
10   *  This library is distributed in the hope that it will be useful,
11   *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13   *  Lesser General Public License for more details.
14   *
15   *  You should have received a copy of the GNU Lesser General Public
16   *  License along with this library; if not, write to the Free Software
17   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18   */
19  
20  package org.microemu.device.impl;
21  
22  import java.io.IOException;
23  import java.net.URL;
24  import java.util.Hashtable;
25  import java.util.Vector;
26  
27  import javax.microedition.lcdui.Font;
28  import javax.microedition.lcdui.Image;
29  
30  import org.microemu.device.DeviceDisplay;
31  
32  public interface DeviceDisplayImpl extends DeviceDisplay {
33  
34  	Image createSystemImage(URL url) throws IOException;
35  
36  	/**
37  	 * @param name
38  	 * @param shape
39  	 * @param keyCode -
40  	 *            Integer.MIN_VALUE when unspecified
41  	 * @param keyboardKeys
42  	 * @param keyboardChars
43  	 * @param chars
44  	 * @param modeChange
45  	 * @return
46  	 */
47  	Button createButton(int skinVersion, String name, Shape shape, int keyCode, String keyboardKeys,
48  			String keyboardChars, Hashtable inputToChars, boolean modeChange);
49  
50  	/**
51  	 * @param name
52  	 * @param rectangle
53  	 * @param keyCode -
54  	 *            Integer.MIN_VALUE when unspecified
55  	 * @param keyName
56  	 * @param paintable
57  	 * @param alignmentName
58  	 * @param commands
59  	 * @param font
60  	 * @return
61  	 */
62  	SoftButton createSoftButton(int skinVersion, String name, Shape shape, int keyCode, String keyName,
63  			Rectangle paintable, String alignmentName, Vector commands, Font font);
64  
65  	SoftButton createSoftButton(int skinVersion, String name, Rectangle paintable, Image normalImage, Image pressedImage);
66  
67  	/**
68  	 * @param i
69  	 */
70  	void setNumColors(int i);
71  
72  	/**
73  	 * @param b
74  	 */
75  	void setIsColor(boolean b);
76  
77  	void setNumAlphaLevels(int i);
78  
79  	/**
80  	 * @param color
81  	 */
82  	void setBackgroundColor(Color color);
83  
84  	/**
85  	 * @param color
86  	 */
87  	void setForegroundColor(Color color);
88  
89  	/**
90  	 * @param rectangle
91  	 */
92  	void setDisplayRectangle(Rectangle rectangle);
93  
94  	/**
95  	 * @param rectangle
96  	 */
97  	void setDisplayPaintable(Rectangle rectangle);
98  
99  	/**
100 	 * @param object
101 	 */
102 	void setMode123Image(PositionedImage object);
103 
104 	/**
105 	 * @param object
106 	 */
107 	void setModeAbcLowerImage(PositionedImage object);
108 
109 	/**
110 	 * @param object
111 	 */
112 	void setModeAbcUpperImage(PositionedImage object);
113 
114 	boolean isResizable();
115 
116 	void setResizable(boolean state);
117 
118 }