From c0510d21c5bfc518f447dd72d164de383a2ed87e Mon Sep 17 00:00:00 2001 From: "jihye424.kim" Date: Wed, 25 Nov 2015 18:54:14 +0900 Subject: [PATCH] vm list table: seperate make table item and draw table item - initialize and refresh: make table item - create vm, modify template, modify base image ...: redraw table item Change-Id: Ie42f9a03ed724e0d6cd59f48e2e68542cfc80548 Signed-off-by: jihye424.kim --- .../ui/renewal/tableviewer/VMListTable.java | 60 ++++++++++++---------- .../ui/renewal/tableviewer/VMListTableViewer.java | 38 +++++++++++--- 2 files changed, 65 insertions(+), 33 deletions(-) diff --git a/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTable.java b/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTable.java index ba2584d..2736073 100644 --- a/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTable.java +++ b/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTable.java @@ -63,8 +63,6 @@ public class VMListTable { private VMListTableViewer viewer; private Table table; - private VMProperty newEmulator; - public VMListTable(VMListTableViewer viewer) { this.viewer = viewer; } @@ -170,22 +168,17 @@ public class VMListTable { // // drawing emulator list table // - public void clearVMList(VMProperty prop) { - this.newEmulator = prop; + public void clearVMList() { table.removeAll(); } public void makeTableItem(ProfileButton pButton) { for (VMProperty property : pButton.getProfile().getEmulatorList()) { - if (property == newEmulator) { - addTableItem(pButton, property, 0); - } else { - addTableItem(pButton, property); - } + addTableItem(pButton, property); } } - public void pack() { + public void pack(int select) { table.getColumn(0).setWidth(30); table.getColumn(1).setWidth(100); @@ -193,8 +186,8 @@ public class VMListTable { table.getColumn(i).pack(); } - if (newEmulator != null) { - table.setSelection(0); + if (select >= 0) { + table.setSelection(select); } } @@ -214,34 +207,47 @@ public class VMListTable { item = new TableItem(table, SWT.NULL); } - if(property.getPropertyValue().baseImage.isStandard()) { - item.setImage(1, pButton.getIcon()); - } else { - item.setImage(1, pButton.getCustomIcon()); - } + setTableItemProperty(pButton, item, property); + } - item.setSelectedImage(1, pButton.getSelectedIcon()); - if (pButton.getProfileName().equals("wearable")) { - VMPropertyValue value = property.getPropertyValue(); - if (value.baseImage.getSkinShape().equals(SKIN_SHAPE.CIRCLE)) { - item.setSelectedImage(1, ImageResources.ICON_SELECTED_WEARABLE_ROUND.getImage()); - } + public void redrawTableItem() { + for (TableItem item : table.getItems()) { + VMProperty property = (VMProperty)item.getData(); + setTableItemProperty(item, property); } - - setTableItemProperty(item, property); } private void setTableItemProperty(TableItem item, VMProperty property) { + setTableItemProperty(null, item, property); + } + + private void setTableItemProperty(ProfileButton pButton, TableItem item, VMProperty property) { VMPropertyValue value = property.getPropertyValue(); if (property.isRunning()) { item.setImage(0, ImageResources.ICON_RUNNING.getImage()); } else { item.setImage(0, ImageResources.ICON_NOT_RUNNING.getImage()); } + + if (pButton != null) { + if(value.baseImage.isStandard()) { + item.setImage(1, pButton.getIcon()); + } else { + item.setImage(1, pButton.getCustomIcon()); + } + + item.setSelectedImage(1, pButton.getSelectedIcon()); + if (pButton.getProfileName().equals("wearable")) { + if (value.baseImage.getSkinShape().equals(SKIN_SHAPE.CIRCLE)) { + item.setSelectedImage(1, ImageResources.ICON_SELECTED_WEARABLE_ROUND.getImage()); + } + } + } + item.setText(2, value.vmsName); item.setText(3, value.device != null - ? value.device.getValue().getName() - : ""); + ? value.device.getValue().getName() + : ""); item.setText(4, value.baseImage.getName()); item.setText(5, value.resolution.getStrTypeValue()); diff --git a/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTableViewer.java b/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTableViewer.java index bf3915f..7a874dc 100644 --- a/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTableViewer.java +++ b/src/org/tizen/emulator/manager/ui/renewal/tableviewer/VMListTableViewer.java @@ -94,7 +94,7 @@ public class VMListTableViewer extends AbstractTableViewer { @Override void showTableComposite() { - if (!isInitialized() || isNeedRedraw()) { + if (!isInitialized()) { createVMCombo.removeAll(); for (ProfileButton pButton : profileButtonList) { @@ -102,11 +102,13 @@ public class VMListTableViewer extends AbstractTableViewer { createVMCombo.add(pButton); } } + makeTableItem(); + } else if (isNeedRedraw()) { if (getData() != null && getData() instanceof VMProperty) { newVM = (VMProperty)getData(); } - redrawingTable(newVM); + redrawTableItem(newVM); } } @@ -122,8 +124,9 @@ public class VMListTableViewer extends AbstractTableViewer { } - public void redrawingTable(VMProperty newVM) { - table.clearVMList(newVM); + // create table item and set property + public void makeTableItem() { + table.clearVMList(); for (ProfileButton pButton : profileButtonList) { if (pButton.getProfile() == null) { @@ -135,7 +138,30 @@ public class VMListTableViewer extends AbstractTableViewer { } } - table.pack(); + table.pack(-1); + } + + // reset property + public void redrawTableItem(VMProperty newVM) { + table.redrawTableItem(); + + if (newVM != null) { + ProfileButton pButton = findProfileButton(newVM.getPropertyValue().baseImage.getProfile()); + if (pButton != null) { + table.addTableItem(pButton, newVM, 0); + } + } + + table.pack(newVM != null ? 0 : -1); + } + + public ProfileButton findProfileButton(String profile) { + for (ProfileButton pButton : profileButtonList) { + if (pButton.getProfileName().equals(profile)) { + return pButton; + } + } + return null; } @Override @@ -218,7 +244,7 @@ public class VMListTableViewer extends AbstractTableViewer { CheckingRunningEmulator.refreshVMPropertyList(); RefreshWorker.refreshVMConnect(); - redrawingTable(null); + makeTableItem(); } public void setDeleteButtonEnabled(boolean enable) { -- 2.7.4