Create VM: add advance setting composite
authorjihye424.kim <jihye424.kim@samsung.com>
Tue, 3 Nov 2015 05:47:24 +0000 (14:47 +0900)
committerSeokYeon Hwang <syeon.hwang@samsung.com>
Wed, 4 Nov 2015 02:19:00 +0000 (11:19 +0900)
- click advance button -> open advance setting composite

Change-Id: I267a84a6d7bc14e9fcf4e50577224b7a855e45d0
Signed-off-by: jihye424.kim <jihye424.kim@samsung.com>
src/org/tizen/emulator/manager/renewal/resources/ImageResources.java
src/org/tizen/emulator/manager/renewal/resources/PatchImageResources.java
src/org/tizen/emulator/manager/ui/renewal/tableviewer/CreateVMTableViewer.java

index 2bbfd6f..ad722db 100644 (file)
@@ -274,6 +274,8 @@ public enum ImageResources {
        ICON_TITILE_DESCRIPTION("icon_title_description"),
        ICON_BLUE_BUTTON_OPEN("icon_blue_btn_open"),
        ICON_BLUE_BUTTON_PLUS("icon_blue_btn_plus"),
+       ICON_BLUE_BUTTON_CLOSE("icon_blue_btn_close"),
+       ICON_BLUE_BUTTON_EXPAND("icon_blue_btn_expand"),
 
        // profile select button
        BTN_PROFILE_MOBILE_SELECTED("btn_profile_mobile_selected"),
index fb6baa7..1f3f128 100644 (file)
@@ -102,7 +102,11 @@ public class PatchImageResources {
 
        /** 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);
+       }
 
+       public static Image getBlueButtonImage(Image icon, int width, int height, int style,
+                       NinePatchResourceInfo ninePatchImagesInfo) {
                if (ninePatchImagesInfo == null) {
                        return null;
                }
@@ -123,7 +127,18 @@ public class PatchImageResources {
                // Draw icon
                if (icon != null) {
                        Rectangle rect = icon.getBounds();
-                       gc.drawImage(icon, (width - rect.width) / 2, (height - rect.height) / 2);
+                       switch(style) {
+                       case SWT.LEFT:
+                               gc.drawImage(icon, 5, (height - rect.height) / 2);
+                               break;
+                       case SWT.RIGHT:
+                               gc.drawImage(icon, (width - rect.width) - 5, (height - rect.height) / 2);
+                               break;
+                       case SWT.CENTER:
+                       default:
+                               gc.drawImage(icon, (width - rect.width) / 2, (height - rect.height) / 2);
+                               break;
+                       }
                }
 
                gc.dispose();
@@ -140,7 +155,6 @@ public class PatchImageResources {
                return cornerTransparentedImage;
        }
 
-
        /** Image should be disposed by caller */
        public static Image getComboPopupImage(int width, int height, NinePatchResourceInfo ninePatchImagesInfo) {
                Image image = new Image(Display.getCurrent(), width, height);
index c6c148a..444e476 100644 (file)
@@ -55,7 +55,6 @@ import org.tizen.emulator.manager.renewal.resources.PatchImageResources;
 import org.tizen.emulator.manager.resources.StringResources;
 import org.tizen.emulator.manager.ui.Messages;
 import org.tizen.emulator.manager.ui.renewal.MainDialog;
-import org.tizen.emulator.manager.ui.renewal.widgets.BlueButton;
 import org.tizen.emulator.manager.ui.renewal.widgets.GrayButton;
 import org.tizen.emulator.manager.ui.renewal.widgets.ImageButton;
 import org.tizen.emulator.manager.ui.renewal.widgets.NinePatchResourceInfo;
@@ -73,6 +72,7 @@ public class CreateVMTableViewer extends AbstractTableViewer {
        private CreateVMTopComposite topComp;
        private SashForm form;
        private CreateVMTable table;
+       private Composite advanceComp;
 
        private Profile profile;
 
@@ -82,7 +82,7 @@ public class CreateVMTableViewer extends AbstractTableViewer {
 
        // sash form menu
        private Label profileLabel;
-       private BlueButton advanceBtn;
+       private ImageButton advanceBtn;
 
        // emulator properties
        private String vmName = "";
@@ -101,12 +101,12 @@ public class CreateVMTableViewer extends AbstractTableViewer {
 
        @Override
        void setLinkerMenu() {
-               // TODO: not used
+               // not used
        }
 
        @Override
        void setIconMenu() {
-               // TODO: not used
+               // not used
        }
 
        @Override
@@ -120,19 +120,26 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                makeTopComposite();
 
                // make sash form menu
-               // TODO
-               advanceBtn = new BlueButton(comp, SWT.PUSH);
-               advanceBtn.setText("  Advance");
+               advanceBtn = new ImageButton(comp, SWT.TOGGLE);
+               setAdvanceButtonImage();
+               advanceBtn.setText("Advance");
+               advanceBtn.setFont(FontResources.DEFAULT_BOLD_FONT_9.getFont());
+               advanceBtn.addListener(SWT.Selection, advanceBtnSelectionListener);
+
                profileLabel = new Label(comp, SWT.NONE);
                profileLabel.setFont(FontResources.DEFAULT_BOLD_FONT_9.getFont());
 
                form = new SashForm(comp, SWT.NONE);
                form.SASH_WIDTH = 0;
-               form.setBackground(ColorResources.BLUE.getColor());
+               //form.setBackground(ColorResources.BLUE.getColor());
 
                table = new CreateVMTable(this);
                table.makeTable(form);
 
+               //TODO: advance option composite
+               advanceComp = new Composite(form, SWT.NONE);
+               advanceComp.setBackground(ColorResources.BLACK.getColor());
+
                setLayout();
        }
 
@@ -234,10 +241,14 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                checkValid();
        }
 
+       public Composite getAdvanceComposite() {
+               return advanceComp;
+       }
+
        private void makeTopComposite() {
                backVMListBtn = new ImageButton(comp, SWT.PUSH);
-               Image hover = PatchImageResources.getThreePatchButtonImage(BACK_BUTTON_WIDTH, hoverInfo);
-               Image normal = PatchImageResources.getThreePatchButtonImage(BACK_BUTTON_WIDTH, normalInfo);
+               Image hover = PatchImageResources.getThreePatchButtonImage(BACK_BUTTON_WIDTH, backBtnHoverInfo);
+               Image normal = PatchImageResources.getThreePatchButtonImage(BACK_BUTTON_WIDTH, backBtnNormalInfo);
 
                backVMListBtn.setText("   Back to VM List");
                backVMListBtn.setFont(FontResources.DEFAULT_FONT_9.getFont());
@@ -258,6 +269,7 @@ public class CreateVMTableViewer extends AbstractTableViewer {
 
                confirmBtn = new GrayButton(comp, SWT.PUSH);
                confirmBtn.setText("Confirm");
+               confirmBtn.setFont(FontResources.DEFAULT_BOLD_FONT_9.getFont());
                confirmBtn.addListener(SWT.Selection, new Listener(){
                        @Override
                        public void handleEvent(Event event) {
@@ -310,6 +322,8 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                VMProperty prop = null;
                try {
                        prop = Creator.create(value);
+                       EmulatorVMList.getInstance().addProperty(prop);
+                       profile.addEmulator(prop);
                } catch (VMWorkerException e) {
                        String msg = Messages.getString("VMsMainView.FailedToCreate.0") //$NON-NLS-1$
                                        + value.vmsName + ") " //$NON-NLS-1$
@@ -319,9 +333,6 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                        // TODO
                }
 
-               EmulatorVMList.getInstance().addProperty(prop);
-               profile.addEmulator(prop);
-
                MainDialog mainDialog = EmulatorManager.getMainDialog();
                VMListTableViewer viewer = (VMListTableViewer)mainDialog.findViewer("vmList");
                if (viewer != null) {
@@ -331,6 +342,22 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                }
        }
 
+       private boolean isOpen = false;
+       Listener advanceBtnSelectionListener = new Listener() {
+
+               @Override
+               public void handleEvent(Event arg0) {
+                       if (isOpen) {
+                               form.SASH_WIDTH = 0;
+                               form.setWeights(new int[]{1,0});
+                       } else {
+                               form.SASH_WIDTH = 5;
+                               form.setWeights(new int[]{1,1});
+                       }
+                       isOpen = !isOpen;
+               }
+       };
+
        private void setLayout() {
                // composite is form layout
                FormData backButtonData;
@@ -378,10 +405,48 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                sashData.bottom = new FormAttachment(100, -10);
                form.setLayoutData(sashData);
 
-               //form.setWeights(new int[]{1,0});
+               form.setWeights(new int[]{1,0});
+       }
+
+       private Image ADVANCE_BUTTON_SELECTED_NORMAL;
+       private Image ADVANCE_BUTTON_SELECTED_HOVER;
+       private Image ADVANCE_BUTTON_UNSELECTED_NORMAL;
+       private Image ADVANCE_BUTTON_UNSELECTED_HOVER;
+       private void setAdvanceButtonImage() {
+               ADVANCE_BUTTON_SELECTED_NORMAL = PatchImageResources.getBlueButtonImage(
+                               ImageResources.ICON_BLUE_BUTTON_CLOSE.getImage(),
+                               90,
+                               BACK_BUTTON_HEIGHT,
+                               SWT.LEFT,
+                               advanceBtnNormalInfo);
+               ADVANCE_BUTTON_SELECTED_HOVER = PatchImageResources.getBlueButtonImage(
+                               ImageResources.ICON_BLUE_BUTTON_CLOSE.getImage(),
+                               90,
+                               BACK_BUTTON_HEIGHT,
+                               SWT.LEFT,
+                               advanceBtnHoverInfo);
+               ADVANCE_BUTTON_UNSELECTED_NORMAL = PatchImageResources.getBlueButtonImage(
+                               ImageResources.ICON_BLUE_BUTTON_EXPAND.getImage(),
+                               90,
+                               BACK_BUTTON_HEIGHT,
+                               SWT.RIGHT,
+                               advanceBtnNormalInfo);
+               ADVANCE_BUTTON_UNSELECTED_HOVER = PatchImageResources.getBlueButtonImage(
+                               ImageResources.ICON_BLUE_BUTTON_EXPAND.getImage(),
+                               90,
+                               BACK_BUTTON_HEIGHT,
+                               SWT.RIGHT,
+                               advanceBtnHoverInfo);
+               advanceBtn.setImages(ADVANCE_BUTTON_SELECTED_NORMAL,
+                               ADVANCE_BUTTON_SELECTED_HOVER,
+                               ADVANCE_BUTTON_SELECTED_HOVER,
+                               ADVANCE_BUTTON_UNSELECTED_NORMAL,
+                               ADVANCE_BUTTON_UNSELECTED_HOVER,
+                               ADVANCE_BUTTON_UNSELECTED_HOVER,
+                               ADVANCE_BUTTON_UNSELECTED_NORMAL);
        }
 
-       private final NinePatchResourceInfo normalInfo = new NinePatchResourceInfo(ColorResources.TABLE_VIEWER_BG,
+       private final NinePatchResourceInfo backBtnNormalInfo = new NinePatchResourceInfo(ColorResources.TABLE_VIEWER_BG,
                        ColorResources.TABLE_VIEWER_BG,
                        null, //left top
                        ImageResources.BACK_BTN_NORMAL_C, // top -> center
@@ -392,7 +457,7 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                        null, // left bottom
                        ImageResources.BACK_BTN_NORMAL_L); // left
 
-       private final NinePatchResourceInfo hoverInfo = new NinePatchResourceInfo(ColorResources.TABLE_VIEWER_BG,
+       private final NinePatchResourceInfo backBtnHoverInfo = new NinePatchResourceInfo(ColorResources.TABLE_VIEWER_BG,
                        ColorResources.TABLE_VIEWER_BG,
                        null, //left top
                        ImageResources.BACK_BTN_HOVER_C, // top -> center
@@ -403,4 +468,27 @@ public class CreateVMTableViewer extends AbstractTableViewer {
                        null, // left bottom
                        ImageResources.BACK_BTN_HOVER_L); // left
 
+       private final NinePatchResourceInfo advanceBtnNormalInfo = new NinePatchResourceInfo(
+                       ColorResources.BLUE_BTN,
+                       ColorResources.RED,
+                       ImageResources.BLUE_BTN_NORMAL_LT,
+                       ImageResources.BLUE_BTN_NORMAL_T,
+                       ImageResources.BLUE_BTN_NORMAL_RT,
+                       ImageResources.BLUE_BTN_NORMAL_R,
+                       ImageResources.BLUE_BTN_NORMAL_RB,
+                       ImageResources.BLUE_BTN_NORMAL_B,
+                       ImageResources.BLUE_BTN_NORMAL_LB,
+                       ImageResources.BLUE_BTN_NORMAL_L);
+
+       private final NinePatchResourceInfo advanceBtnHoverInfo = new NinePatchResourceInfo(
+                       ColorResources.BLUE_BTN,
+                       ColorResources.RED,
+                       ImageResources.BLUE_BTN_HOVER_LT,
+                       ImageResources.BLUE_BTN_HOVER_T,
+                       ImageResources.BLUE_BTN_HOVER_RT,
+                       ImageResources.BLUE_BTN_HOVER_R,
+                       ImageResources.BLUE_BTN_HOVER_RB,
+                       ImageResources.BLUE_BTN_HOVER_B,
+                       ImageResources.BLUE_BTN_HOVER_LB,
+                       ImageResources.BLUE_BTN_HOVER_L);
 }