newPath = path;
newPathName = path.substring(path.lastIndexOf(File.separator) + 1, path.length());
- EmulatorVMs.getInstance().CustomArch = newPathName.endsWith("x86") ? "x86" : "arm";
+ boolean isArm = newPathName.endsWith("arm");
+ EmulatorVMs.getInstance().CustomArch = !isArm ? "x86" : "arm";
baseImageButton.setText(newPathName);
isSelected = true;
((NameText)TableWidgetList.getInstance().findVMWidget("name", isCreateMode())).checkImageName();
+ ((HWVirtualizationCombo)TableWidgetList.getInstance()
+ .findVMWidget("hw", isCreateMode())).settingWidgetState(isArm);
+ ((GLAccelerationCombo)TableWidgetList.getInstance()
+ .findVMWidget("gl", isCreateMode())).settingWidgetState(isArm);
}
}
public void widgetDefaultSelected(SelectionEvent e) {
}
if (!find) {
- skinCombo.add(oldSkin.toString(), 0);
- skinCombo.select(0);
+ if (oldSkin != null) {
+ skinCombo.add(oldSkin.toString(), 0);
+ skinCombo.select(0);
+ }
+ } else {
+ newSkin = tempSkin;
}
return true;
}
}
-class HWVirtualizaiontCombo extends TableWidget {
+class HWVirtualizationCombo extends TableWidget {
private Combo HWVirtualCombo;
private boolean oldIsSupport;
private boolean newIsSupport;
+ private boolean isSelectedArm;
- public HWVirtualizaiontCombo(boolean isCreate) {
+ public HWVirtualizationCombo(boolean isCreate) {
super("hw", isCreate);
setTitle("HW Virtualization");
}
}
public String getValue(VMPropertyValue value) {
- return value.isHWVirtualization
+ if (value.archType.equals("arm")) {
+ return StringResource.NOT_SUPPORTED;
+ } else {
+ return value.isHWVirtualization
? StringResource.SUPPORTED : StringResource.NOT_SUPPORTED;
+ }
}
public void setValue(VMPropertyValue value) {
}
public boolean settingWidget(Table table, VMPropertyValue value) {
- oldIsSupport = newIsSupport = value.isHWVirtualization;
+ isSelectedArm = false;
+
+ boolean isArm = value.archType.equals("arm");
+
+ if (isCreateMode() && isArm) {
+ oldIsSupport = newIsSupport = false;
+ } else {
+ oldIsSupport = newIsSupport = value.isHWVirtualization;
+ }
VMCreateHelper helper = new VMCreateHelper();
HWVirtualCombo = helper.makeCombo(table);
helper.addComboItem(HWVirtualCombo, SupportType.getInstance().getList());
HWVirtualCombo.select(oldIsSupport
- && CheckVirtualization.getInstance().isSupportVirtualization()
+ && CheckVirtualization.getInstance().isSupportVirtualization() && !isArm
? 0 : 1);
- if (!CheckVirtualization.getInstance().isSupportVirtualization()) {
+ if (!CheckVirtualization.getInstance().isSupportVirtualization() || isArm) {
HWVirtualCombo.setEnabled(false);
}
public void closeWidget() {
HWVirtualCombo.dispose();
}
+
+ public void settingWidgetState(boolean isArm) {
+ if (isArm) {
+ if (!isSelectedArm) {
+ oldIsSupport = newIsSupport;
+ newIsSupport = false;
+ }
+ isSelectedArm = true;
+ HWVirtualCombo.select(1);
+ HWVirtualCombo.setEnabled(false);
+ } else {
+ if (isSelectedArm) {
+ newIsSupport = oldIsSupport;
+ }
+ isSelectedArm = false;
+ HWVirtualCombo.select(newIsSupport ? 0 : 1);
+ HWVirtualCombo.setEnabled(true);
+ }
+ }
}
class GLAccelerationCombo extends TableWidget {
private Combo GLAcceleCombo;
private boolean oldIsSupport;
private boolean newIsSupport;
+ private boolean isSelectedArm;
public GLAccelerationCombo(boolean isCreate) {
super("gl", isCreate);
}
public String getValue(VMPropertyValue value) {
- return value.isGLAcceleration
+ if (value.archType.equals("arm")) {
+ return StringResource.NOT_SUPPORTED;
+ } else {
+ return value.isGLAcceleration
? StringResource.SUPPORTED : StringResource.NOT_SUPPORTED;
+ }
}
public void setValue(VMPropertyValue value) {
}
public boolean settingWidget(Table table, VMPropertyValue value) {
- oldIsSupport = newIsSupport = value.isGLAcceleration;
+ isSelectedArm = false;
+ boolean isArm = value.archType.equals("arm");
+
+ if (isCreateMode() && isArm) {
+ oldIsSupport = newIsSupport = false;
+ } else {
+ oldIsSupport = newIsSupport = value.isGLAcceleration;
+ }
VMCreateHelper helper = new VMCreateHelper();
GLAcceleCombo = helper.makeCombo(table);
helper.addComboItem(GLAcceleCombo, SupportType.getInstance().getList());
- GLAcceleCombo.select(oldIsSupport ? 0 : 1);
+ GLAcceleCombo.select(oldIsSupport && !isArm ? 0 : 1);
+
+ if (isArm) {
+ GLAcceleCombo.setEnabled(false);
+ }
+
return true;
}
public void closeWidget() {
GLAcceleCombo.dispose();
}
+
+ public void settingWidgetState(boolean isArm) {
+ if (isArm) {
+ if (!isSelectedArm) {
+ oldIsSupport = newIsSupport;
+ newIsSupport = false;
+ }
+ isSelectedArm = true;
+ GLAcceleCombo.select(1);
+ GLAcceleCombo.setEnabled(false);
+ } else {
+ if (isSelectedArm) {
+ newIsSupport = oldIsSupport;
+ }
+ isSelectedArm = false;
+ GLAcceleCombo.select(newIsSupport ? 0 : 1);
+ GLAcceleCombo.setEnabled(true);
+ }
+ }
}
class TouchPointLabel extends TableWidget {