/** Image should be disposed by caller */
+ public static Image getNinePatchButtonImage(int width, int height, NinePatchResourceInfo ninePatchImagesInfo
+ , ColorResources parentBackground) {
+
+ if (ninePatchImagesInfo == null) {
+ return null;
+ }
+
+ Image image = new Image(Display.getCurrent(), width, height);
+ GC gc = new GC(image);
+ gc.setInterpolation(SWT.NONE);
+
+ // First, fill background with parent background
+ Color transparentColor = parentBackground.getColor();
+ gc.setBackground(transparentColor);
+ gc.fillRectangle(0, 0, width, height);
+
+
+ // Draw Image
+ drawNinePatchImage(gc, width, height, ninePatchImagesInfo);
+ gc.dispose();
+
+ return image;
+ }
+
+ /** Image should be disposed by caller */
public static Image getBlueButtonImage(Image icon, int width, int height, NinePatchResourceInfo ninePatchImagesInfo) {
return PatchImageResources.getBlueButtonImage(icon, width, height, SWT.CENTER, ninePatchImagesInfo);
}
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
+import org.tizen.emulator.manager.renewal.resources.ColorResources;
import org.tizen.emulator.manager.ui.renewal.item.modify.comp.ModifyItem;
import org.tizen.emulator.manager.ui.renewal.widgets.ComboBox;
protected void createCombo(ModifyItem item, int width) {
+ createCombo(item, width, ColorResources.WHITE);
+ }
+ protected void createCombo(ModifyItem item, int width, ColorResources parentBackground) {
item.setBodyLayoutForm();
comboBox = new ComboBox(getItemListComp().getShell(), item.getBody(), SWT.NONE);
+ comboBox.setParentBackground(parentBackground);
comboBox.setLayoutData(getItemFormData(width));
addSelectionListener();
}
-
private void addSelectionListener() {
Listener listener = new Listener() {
@Override
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
import org.tizen.emulator.manager.logging.EMLogger;
+import org.tizen.emulator.manager.renewal.resources.ColorResources;
import org.tizen.emulator.manager.ui.renewal.item.modify.comp.ModifyItem;
import org.tizen.emulator.manager.ui.renewal.item.modify.comp.PropertyValue;
import org.tizen.emulator.manager.ui.renewal.widgets.ComboBox;
data.width = DisplayItem.COMBO_WIDTH;
data.height = ModifyItem.WIDGET_HEIGHT;
resolutionCombo = new ComboBox(displayItem.getItemListComp().getShell(), comp, SWT.NONE);
+ resolutionCombo.setParentBackground(ColorResources.MODIFY_ITEM_TITLE_SUB_BACKGROUND);
resolutionCombo.setLayoutData(data);
addResolutionComboListener();
import org.tizen.emulator.manager.platform.Profile;
import org.tizen.emulator.manager.platform.baseimage.CustomBaseImageValue;
import org.tizen.emulator.manager.platform.baseimage.CustomBaseImageWorker;
+import org.tizen.emulator.manager.renewal.resources.ColorResources;
import org.tizen.emulator.manager.renewal.resources.FontResources;
import org.tizen.emulator.manager.renewal.resources.ImageResources;
import org.tizen.emulator.manager.resources.StringResources;
private static final int INPUT_BOX_WIDTH = 250;
private static final int INPUT_BOX_HEIGHT = 24;
- private CreateVMTableViewer viewer;
+ private final CreateVMTableViewer viewer;
private Profile profile;
private BaseImage baseImage;
vmNameText.getTextWidget().setTextLimit(20);
baseImageCombo = new ComboBox(this.getShell(), this, SWT.NONE);
+ baseImageCombo.setParentBackground(ColorResources.TABLE_VIEWER_BG);
baseImageCombo.addListener(SWT.Selection, imageComboListener);
addCustomImageBtn = new BlueButton(this, SWT.PUSH);
import org.tizen.emulator.manager.renewal.resources.ColorResources;
import org.tizen.emulator.manager.renewal.resources.FontResources;
import org.tizen.emulator.manager.renewal.resources.ImageResources;
+import org.tizen.emulator.manager.renewal.resources.PatchImageResources;
public class ComboBox extends NinePatchBox {
private String selectedItem = "";
private Object selectedData;
+ private ColorResources parentBackground = ColorResources.WHITE;
+
// This decide whether widget is modifiable or not.
// This is distinguished from disabled.
private boolean isFixed = false;
initBox();
createText();
addMouseListener();
+ }
+ public void setParentBackground(ColorResources parentBackground) {
+ this.parentBackground = parentBackground;
}
public void clear() {
drawArrow(e);
}
+
+ @Override
+ protected void drawBox(PaintEvent e) {
+ // get box image
+ Image image = imageMap.get(state);
+ if (image == null) {
+ NinePatchResourceMap map = getNinePatchResourceMap();
+ if (map == null) {
+ return;
+ }
+ Rectangle rect = ((Canvas) e.widget).getClientArea();
+ image = PatchImageResources.getNinePatchButtonImage(
+ rect.width, rect.height, map.get(state), parentBackground);
+ imageMap.put(state, image);
+ }
+
+ // draw box image
+ if (image != null) {
+ GC gc = e.gc;
+ Rectangle imgRect = image.getBounds();
+ gc.drawImage(image, imgRect.x, imgRect.y);
+ }
+ }
+
@Override
public void setEnabled(boolean enabled) {
if (enabled) {
public abstract NinePatchResourceMap getNinePatchResourceMap();
- private final Map<WSTATE, Image> imageMap = new HashMap<WSTATE, Image>();
- private WSTATE state = WSTATE.NORMAL;
+ protected final Map<WSTATE, Image> imageMap = new HashMap<WSTATE, Image>();
+ protected WSTATE state = WSTATE.NORMAL;
protected void draw(PaintEvent e) {
}
- private void drawBox(PaintEvent e) {
+ protected void drawBox(PaintEvent e) {
// get box image
Image image = imageMap.get(state);
if (image == null) {