001: /*
002: *
003: *
004: * Copyright 1990-2007 Sun Microsystems, Inc. All Rights Reserved.
005: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER
006: *
007: * This program is free software; you can redistribute it and/or
008: * modify it under the terms of the GNU General Public License version
009: * 2 only, as published by the Free Software Foundation.
010: *
011: * This program is distributed in the hope that it will be useful, but
012: * WITHOUT ANY WARRANTY; without even the implied warranty of
013: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014: * General Public License version 2 for more details (a copy is
015: * included at /legal/license.txt).
016: *
017: * You should have received a copy of the GNU General Public License
018: * version 2 along with this work; if not, write to the Free Software
019: * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
020: * 02110-1301 USA
021: *
022: * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
023: * Clara, CA 95054 or visit www.sun.com if you need additional
024: * information or have any questions.
025: */
026: package com.sun.midp.chameleon.skins;
027:
028: import com.sun.midp.chameleon.skins.resources.*;
029:
030: import javax.microedition.lcdui.Image;
031: import javax.microedition.lcdui.Font;
032: import javax.microedition.lcdui.Choice;
033:
034: /**
035: * ChoiceGroupSkin represents the properties and values used to render
036: * a ChoiceGroup in the javax.microedition.lcdui package.
037: */
038: public class ChoiceGroupSkin {
039:
040: /**
041: * This field corresponds to CHOICE_WIDTH_IMAGE skin property.
042: * See its comment for further details.
043: */
044: public static int WIDTH_IMAGE;
045:
046: /**
047: * This field corresponds to CHOICE_HEIGHT_IMAGE skin property.
048: * See its comment for further details.
049: */
050: public static int HEIGHT_IMAGE;
051:
052: /**
053: * This field corresponds to CHOICE_WIDTH_SCROLL skin property.
054: * See its comment for further details.
055: * IMPL NOTE: all scrolling should be handled by a ScrollLayer
056: */
057: public static int WIDTH_SCROLL;
058:
059: /**
060: * This field corresponds to CHOICE_WIDTH_THUMB skin property.
061: * See its comment for further details.
062: * IMPL NOTE: all scrolling should be handled by a ScrollLayer
063: */
064: public static int WIDTH_THUMB;
065:
066: /**
067: * This field corresponds to CHOICE_HEIGHT_THUMB skin property.
068: * See its comment for further details.
069: * IMPL NOTE: all scrolling should be handled by a ScrollLayer
070: */
071: public static int HEIGHT_THUMB;
072:
073: /**
074: * This field corresponds to CHOICE_PAD_H skin property.
075: * See its comment for further details.
076: */
077: public static int PAD_H;
078:
079: /**
080: * This field corresponds to CHOICE_PAD_V skin property.
081: * See its comment for further details.
082: */
083: public static int PAD_V;
084:
085: /**
086: * This field corresponds to CHOICE_COLOR_FG skin property.
087: * See its comment for further details.
088: */
089: public static int COLOR_FG;
090:
091: /**
092: * This field corresponds to CHOICE_COLOR_BG skin property.
093: * See its comment for further details.
094: */
095: public static int COLOR_BG;
096:
097: /**
098: * This field corresponds to CHOICE_COLOR_BRDR skin property.
099: * See its comment for further details.
100: */
101: public static int COLOR_BORDER;
102:
103: /**
104: * This field corresponds to CHOICE_COLOR_BRDR_SHD skin property.
105: * See its comment for further details.
106: */
107: public static int COLOR_BORDER_SHD;
108:
109: /**
110: * This field corresponds to CHOICE_COLOR_SCROLL skin property.
111: * See its comment for further details.
112: * IMPL NOTE: all scrolling should be handled by a ScrollLayer
113: */
114: public static int COLOR_SCROLL;
115:
116: /**
117: * This field corresponds to CHOICE_COLOR_THUMB skin property.
118: * See its comment for further details.
119: * IMPL NOTE: all scrolling should be handled by a ScrollLayer
120: */
121: public static int COLOR_THUMB;
122:
123: /**
124: * This field corresponds to CHOICE_FONT skin property.
125: * See its comment for further details.
126: */
127: public static Font FONT;
128:
129: /**
130: * This field corresponds to CHOICE_FONT_FOCUS skin property.
131: * See its comment for further details.
132: */
133: public static Font FONT_FOCUS;
134:
135: /**
136: * This field corresponds to CHOICE_IMAGE_RADIO skin property.
137: * See its comment for further details.
138: */
139: public static Image[] IMAGE_RADIO;
140:
141: /**
142: * This field corresponds to CHOICE_IMAGE_CHKBX skin property.
143: * See its comment for further details.
144: */
145: public static Image[] IMAGE_CHKBOX;
146:
147: /**
148: * This field corresponds to CHOICE_IMAGE_BG skin property.
149: * See its comment for further details.
150: *
151: * A 'null' value for this array means there is no image background
152: * and a solid fill color should be used.
153: */
154: public static Image[] IMAGE_BG;
155:
156: /**
157: * This field corresponds to CHOICE_IMAGE_BTN_BG skin property.
158: * See its comment for further details.
159: *
160: * A 'null' value for this array means there is no image background
161: * and a solid fill color should be used.
162: */
163: public static Image[] IMAGE_BUTTON_BG;
164:
165: /**
166: * This field corresponds to CHOICE_IMAGE_BTN_ICON skin property.
167: * See its comment for further details.
168: */
169: public static Image IMAGE_BUTTON_ICON;
170:
171: /**
172: * This field corresponds to CHOICE_IMAGE_POPUP_BG skin property.
173: * See its comment for further details.
174: *
175: * A 'null' value for this array means there is no image background
176: * and a solid fill color should be used.
177: */
178: public static Image[] IMAGE_POPUP_BG;
179:
180: // private constructor
181: private ChoiceGroupSkin() {
182: }
183:
184: /**
185: * Returns best image width to be used in ChoiceGroup/List after
186: * checking that skin resources were loaded.
187: * @return best image width for ChoiceGroup/List
188: */
189: public static int getBestImageWidth() {
190: ChoiceGroupResources.load();
191: return WIDTH_IMAGE;
192: }
193:
194: /**
195: * Returns best image height to be used in ChoiceGroup/List after
196: * checking that skin resources were loaded.
197: * @return best image height for ChoiceGroup/List
198: */
199: public static int getBestImageHeight() {
200: ChoiceGroupResources.load();
201: return HEIGHT_IMAGE;
202: }
203: }
|