- In VM property UI, a "lineLabel" item categorizes items which are displayed below .
- Each item can refer each other by using map in "lineLabel" item.
Change-Id: Ibd6a5586e2538abb03bdab65417be441f30ac248
Signed-off-by: minkee.lee <minkee.lee@samsung.com>
protected boolean isHide = false;
+ protected LineLabelViewItem lineLabelViewItem;
+
+ public AdvancedViewItem(LineLabelViewItem lineLabelViewItem) {
+ this.lineLabelViewItem = lineLabelViewItem;
+ }
+
+ public LineLabelViewItem getLineLabelViewItem() {
+ return lineLabelViewItem;
+ }
+
public boolean isArrowSelected() {
return arrowSelected;
}
import org.tizen.emulator.manager.ui.detail.item.template.FileViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.LabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.OnOffViewItem;
+import org.tizen.emulator.manager.ui.detail.item.template.TextViewItem;
import org.tizen.emulator.manager.vms.xml.template.DeviceList;
import org.tizen.emulator.manager.vms.xml.template.Item;
import org.tizen.emulator.manager.vms.xml.template.ItemList;
if (propertyList != null) {
List<IViewItem> itemList = (List<IViewItem>)list;
List<Item> propertyItemList = propertyList.getItem();
+ LineLabelViewItem currentLineLabel = null; // Top categorizing item
+
for (Item item : propertyItemList) {
+ String type = item.getType();
String itemName = item.getName();
+
+ if (type.equals(ItemType.LINE_LABEL.getName())) { // Top categorizing item
+ currentLineLabel = new LineLabelViewItem(item);
+ itemList.add(currentLineLabel);
+ continue;
+ }
+
if (itemName.equals(ITEM_VM_NAME)) {
- itemList.add(new VMNameViewItem(item, false));
+ itemList.add(new VMNameViewItem(item, currentLineLabel));
} else if (itemName.equals(ITEM_BASE_IMAGE)) {
- itemList.add(new BaseImageViewItem(item, false));
+ itemList.add(new BaseImageViewItem(item, currentLineLabel));
} else if (itemName.equals(ITEM_DISPLAY)) {
- itemList.add(new DisplayViewItem(item, false));
+ itemList.add(new DisplayViewItem(item, currentLineLabel));
} else if (itemName.equals(ITEM_RAM_SIZE)) {
- itemList.add(new RamSizeItem(item, false));
+ itemList.add(new RamSizeItem(item, currentLineLabel));
} else if (itemName.equals(ITEM_MAX_TOUCH)) {
- itemList.add(new MaxTouchViewItem(item, false));
+ itemList.add(new MaxTouchViewItem(item, currentLineLabel));
} else if (itemName.equals(ITEM_FILE_SHARE)) {
- itemList.add(new FileShareViewItem(item, false));
+ itemList.add(new FileShareViewItem(item, currentLineLabel));
} else if (itemName.equals(ITEM_HW_SUPPORT)) {
- itemList.add(new HWSupportViewItem(item, false));
+ itemList.add(new HWSupportViewItem(item, currentLineLabel));
}
}
}
if (deviceList != null) {
List<IViewItem> itemList = (List<IViewItem>)list;
List<Item> deviceItemList = deviceList.getItem();
- if (deviceItemList.size() > 0) {
- itemList.add(new TAdvancedOptionLabelItem());
- }
- makeItemList(itemList, deviceItemList);
- }
- }
+ LineLabelViewItem currentLineLabel = null; // Top categorizing item
+
+ for (Item item : deviceItemList) {
+ String type = item.getType();
+
+ if (type.equals(ItemType.LINE_LABEL.getName())) { // Top categorizing item
+ currentLineLabel = new LineLabelViewItem(item);
+ itemList.add(currentLineLabel);
- private void makeItemList(List<IViewItem> itemList, List<Item> templateItemList) {
- for (Item item : templateItemList) {
- String type = item.getType();
- if (type.equals(ItemType.TOGGLE.getName())) {
- itemList.add(new OnOffViewItem(item, true));
+ } else if (type.equals(ItemType.TOGGLE.getName())) {
+ itemList.add(new OnOffViewItem(item, currentLineLabel));
- } else if (type.equals(ItemType.LABEL.getName())) {
- itemList.add(new LabelViewItem(item, true));
+ } else if (type.equals(ItemType.LABEL.getName())) {
+ itemList.add(new LabelViewItem(item, currentLineLabel));
- } else if (type.equals(ItemType.COMBO.getName())) {
- itemList.add(new ComboViewItem(item, true));
+ } else if (type.equals(ItemType.COMBO.getName())) {
+ itemList.add(new ComboViewItem(item, currentLineLabel));
- } else if (type.equals(ItemType.FILE.getName())) {
- itemList.add(new FileViewItem(item, true));
+ } else if (type.equals(ItemType.FILE.getName())) {
+ itemList.add(new FileViewItem(item, currentLineLabel));
- } else if (type.equals(ItemType.CHECK_LABEL.getName())) {
- itemList.add(new CheckLabelViewItem(item, true));
+ } else if (type.equals(ItemType.CHECK_LABEL.getName())) {
+ itemList.add(new CheckLabelViewItem(item, currentLineLabel));
+
+ } else if (type.equals(ItemType.TEXT.getName())) {
+ itemList.add(new TextViewItem(item, currentLineLabel));
+ }
}
}
}
+
// Override if need
public void makeCustomDeviceItemList(List<? extends IViewItem> list, List<ItemList> templateList) {
if (templateList == null || templateList.size() == 0 ) {
SPINNER("spinner"),
LABEL("label"),
CHECK_LABEL("checkLabel"),
- CHECK_BOX("checkbox")
+ CHECK_BOX("checkbox"),
+ LINE_LABEL("lineLabel")
;
private String name;
package org.tizen.emulator.manager.ui.detail.item;
+import java.util.HashMap;
+import java.util.Map;
+
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseListener;
import org.tizen.emulator.manager.ui.detail.item.DetailViewItem;
import org.tizen.emulator.manager.ui.widgets.ImageButton;
import org.tizen.emulator.manager.vms.VMPropertyValue;
+import org.tizen.emulator.manager.vms.xml.template.Item;
+
+public class LineLabelViewItem extends DetailViewItem{
+
+ private Map<String, AdvancedViewItem> itemMap = new HashMap<String, AdvancedViewItem>();
+
+ public LineLabelViewItem() {
+ this.title = "Advanced Options";
+ }
+ public LineLabelViewItem(Item template) {
+ this.title = template.getTitle();
+ }
-public class TAdvancedOptionLabelItem extends DetailViewItem{
+ public void addItem(String name, AdvancedViewItem item) {
+ itemMap.put(name, item);
+ }
+ public AdvancedViewItem getItem(String name) {
+ return (AdvancedViewItem)itemMap.get(name);
+ }
@Override
public void drawDetail() {
@Override
public void init() {
- title = "Advanced Options";
count = 1;
TITLE_WIDTH = 150;
}
import org.tizen.emulator.manager.resources.StringResources;
import org.tizen.emulator.manager.ui.MainDialog;
import org.tizen.emulator.manager.ui.VMsMainView;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.FileViewItem;
import org.tizen.emulator.manager.ui.dialog.MessageDialog;
import org.tizen.emulator.manager.ui.widgets.ImageButton;
private boolean isStandard;
private Image IMAGE_INPUTBOX_IMAGE = null;
- public BaseImageViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public BaseImageViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
}
@Override
import java.util.List;
import org.tizen.emulator.manager.logging.EMLogger;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.ISubViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.LabelViewItem;
import org.tizen.emulator.manager.vms.RESOLUTION;
private DPISubViewItem dpiItem;
private SkinSubViewItem skinItem;
- public DisplayViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public DisplayViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
}
@Override
import java.util.ArrayList;
import java.util.List;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.ISubViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.LabelViewItem;
import org.tizen.emulator.manager.vms.xml.template.Item;
FileShareDialogSubViewItem dialogItem;
- public FileShareViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public FileShareViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
}
protected List<ISubViewItem> getSubItemList() {
import java.util.ArrayList;
import java.util.List;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.ISubViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.LabelViewItem;
import org.tizen.emulator.manager.vms.xml.template.Item;
public static String ITEM_CPU = "cpu";
public static String ITEM_GPU = "gpu";
- public HWSupportViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public HWSupportViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
}
import org.eclipse.swt.layout.FormData;
import org.tizen.emulator.manager.logging.EMLogger;
import org.tizen.emulator.manager.resources.PatchImageResources;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.TextViewItem;
import org.tizen.emulator.manager.ui.widgets.ImageLabel;
import org.tizen.emulator.manager.vms.VMPropertyValue;
public class MaxTouchViewItem extends TextViewItem {
- public MaxTouchViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public MaxTouchViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
}
@Override
import org.tizen.emulator.manager.resources.FontResources;
import org.tizen.emulator.manager.resources.ImageResources;
import org.tizen.emulator.manager.resources.PatchImageResources;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.ComboViewItem;
import org.tizen.emulator.manager.ui.widgets.ImageCombo;
import org.tizen.emulator.manager.ui.widgets.WSTATE;
public class RamSizeItem extends ComboViewItem{
+ public RamSizeItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
+ }
+
private Label unitLabel;
private static String RAM_UNIT = "MB";
- public RamSizeItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
- }
@Override
protected void parseOption(List<Option> optionList) {
import org.tizen.emulator.manager.resources.PatchImageResources;
import org.tizen.emulator.manager.ui.VMsMainView;
import org.tizen.emulator.manager.ui.detail.item.ItemChangeState;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.template.TextViewItem;
import org.tizen.emulator.manager.ui.widgets.ImageLabel;
import org.tizen.emulator.manager.vms.VMProperty;
private boolean isStandard;
- public VMNameViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public VMNameViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
}
@Override
import org.eclipse.swt.layout.FormData;
import org.tizen.emulator.manager.resources.ImageResources;
import org.tizen.emulator.manager.ui.detail.item.ItemType;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.OptionType;
import org.tizen.emulator.manager.ui.widgets.ImageButton;
import org.tizen.emulator.manager.vms.VMPropertyValue;
private ImageButton checkBox;
private boolean hideLabel = false;
- public CheckLabelViewItem(Item template, boolean isDeviceItem) {
- super(template, isDeviceItem);
+ public CheckLabelViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(template, lineLabelViewItem);
TITLE_WIDTH = 60; // override
parseOption(template.getOption());
}
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FormAttachment;
import org.eclipse.swt.layout.FormData;
+import org.eclipse.swt.layout.FormLayout;
+import org.eclipse.swt.widgets.Text;
import org.tizen.emulator.manager.resources.ImageResources;
import org.tizen.emulator.manager.resources.PatchImageResources;
import org.tizen.emulator.manager.ui.detail.item.AdvancedViewItem;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.OptionType;
import org.tizen.emulator.manager.ui.widgets.ImageCombo;
import org.tizen.emulator.manager.ui.widgets.ImageLabel;
protected List<String> comboOptions = new ArrayList<String>();
protected ImageCombo combo;
protected Image INPUTBOX_ON_IMAGE = null;
+ protected Image INPUTBOX_OFF_IMAGE = null;
protected int COMBOBOX_WIDTH = 175;
- public ComboViewItem(Item template, boolean isDeviceItem) {
- if (!isDeviceItem) {
+ public ComboViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(lineLabelViewItem);
+ if (lineLabelViewItem == null) {
INDENT = 0;
}
+
name = template.getName();
title = template.getTitle();
count = 1;
if (combo != null) {
combo.dispose();
}
+ if (INPUTBOX_ON_IMAGE != null) {
+ INPUTBOX_ON_IMAGE.dispose();
+ }
}
@Override
combo.setArrowButtonImage(ImageResources.ARROW_DROPDOWN.getImage());
combo.setEnabled(true);
combo.setItemHeight(INPUTBOX_ON_IMAGE.getImageData().height);
+ combo.setLayout(new FormLayout());
FormData data = new FormData();
data.left = new FormAttachment(0, INPUTBOX_OFFSET);
import org.tizen.emulator.manager.resources.PatchImageResources;
import org.tizen.emulator.manager.ui.MainDialog;
import org.tizen.emulator.manager.ui.detail.item.AdvancedViewItem;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.OptionType;
import org.tizen.emulator.manager.ui.widgets.ImageButton;
import org.tizen.emulator.manager.ui.widgets.ImageLabel;
protected FileDialog fd;
protected List<String> filters = new ArrayList<String>();
- public FileViewItem(Item template, boolean isDeviceItem) {
- if (!isDeviceItem) {
+ public FileViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(lineLabelViewItem);
+ if (lineLabelViewItem == null) {
INDENT = 0;
}
+
name = template.getName();
title = template.getTitle();
count = 1;
import org.tizen.emulator.manager.ui.detail.item.AdvancedViewItem;
import org.tizen.emulator.manager.ui.detail.item.ItemType;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.detail.item.OptionType;
import org.tizen.emulator.manager.vms.VMPropertyValue;
import org.tizen.emulator.manager.vms.xml.template.Item;
boolean isDeviceItem;
boolean spreadOnStart = true;
- public LabelViewItem(Item template, boolean isDeviceItem) {
-// super.init();
- if (!isDeviceItem) {
+ public LabelViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(lineLabelViewItem);
+ if (lineLabelViewItem == null) {
INDENT = 0;
}
+
title = template.getTitle();
name = template.getName();
// count = template.getItem().size();
import org.tizen.emulator.manager.resources.PatchImageResources;
import org.tizen.emulator.manager.resources.StringResources;
import org.tizen.emulator.manager.ui.detail.item.AdvancedViewItem;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.widgets.ImageButton;
import org.tizen.emulator.manager.ui.widgets.ImageLabel;
import org.tizen.emulator.manager.vms.VMPropertyValue;
private ImageButton onOffButton;
- public OnOffViewItem(Item template, boolean isDeviceItem) {
- if (!isDeviceItem) {
+ public OnOffViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(lineLabelViewItem);
+ if (lineLabelViewItem == null) {
INDENT = 0;
}
+
name = template.getName();
title = template.getTitle();
count = 1;
@Override
public boolean settingModifyItem(VMPropertyValue value) {
newValue = value.getAdvancedOptionSubValue(parentItem.getName(), name);
+ text.setText(newValue);
return false;
}
import org.tizen.emulator.manager.resources.PatchImageResources;
import org.tizen.emulator.manager.ui.detail.item.AdvancedViewItem;
import org.tizen.emulator.manager.ui.detail.item.ItemChangeState;
+import org.tizen.emulator.manager.ui.detail.item.LineLabelViewItem;
import org.tizen.emulator.manager.ui.widgets.ImageLabel;
import org.tizen.emulator.manager.vms.VMProperty;
import org.tizen.emulator.manager.vms.VMPropertyValue;
protected Image INPUTBOX_ON_IMAGE = null;
protected Image INPUTBOX_OFF_IMAGE = null;
- public TextViewItem(Item template, boolean isDeviceItem) {
- if (!isDeviceItem) {
+ public TextViewItem(Item template, LineLabelViewItem lineLabelViewItem) {
+ super(lineLabelViewItem);
+ if (lineLabelViewItem == null) {
INDENT = 0;
}
name = template.getName();
valueLabel = new ImageLabel(compList.get(0), SWT.NONE);
valueLabel.setEnableImage(INPUTBOX_ON_IMAGE);
- valueLabel.setDisableImage(INPUTBOX_OFF_IMAGE);
+// valueLabel.setDisableImage(INPUTBOX_OFF_IMAGE);
valueLabel.setLayout(new FormLayout());
FormData data = new FormData();
@Override
public boolean settingDetailItem(VMPropertyValue value) {
- // TODO Auto-generated method stub
+ valueLabel.setText(value.getAdvancedOptionValue(name));
return false;
}
@Override
public void setValue(VMPropertyValue value) {
- // TODO Auto-generated method stub
+ value.setAdvancedOption(name, newValue);
}
@Override
public boolean settingModifyItem(VMPropertyValue value) {
- // TODO Auto-generated method stub
+ newValue = value.getAdvancedOptionValue(name);
+ text.setText(newValue);
return false;
}