[Title] emulator-manager : add double click listener
authorjihye kim <jihye1128.kim@samsung.com>
Thu, 13 Jun 2013 08:19:13 +0000 (17:19 +0900)
committerjihye kim <jihye1128.kim@samsung.com>
Thu, 13 Jun 2013 09:00:58 +0000 (18:00 +0900)
[Desc.] add double click listener (for launching emulator)
[Issue] N/A

Change-Id: I438cf3abbd6c6d0697d19fa3dc6cf8e31726d328
Signed-off-by: jihye kim <jihye1128.kim@samsung.com>
package/changelog
package/pkginfo.manifest
src/org/tizen/emulator/manager/resources/FontResources.java
src/org/tizen/emulator/manager/ui/list/RowItem.java
src/org/tizen/emulator/manager/ui/list/TreeListView.java
src/org/tizen/emulator/manager/ui/list/VMButtonFactory.java

index 08e3530..0e0b935 100644 (file)
@@ -1,3 +1,8 @@
+* 2.2.1
+- add double click listener -> launching vm
+- change mac os defualt font "Lucida Grande"
+== jihye kim <jihye1128.kim@samsung.com> 2013-06-13
+
 * 2.2.0
 - change USER_DATA_PATH -> SDK_DATA_PATH
 - update version
index 1e5485d..510cf2c 100644 (file)
@@ -1,5 +1,5 @@
 Source: emulator-manager
-Version: 2.2.0
+Version: 2.2.1
 Maintainer: Yeong-Kyoon Lee<yeongkyoon.lee@samsung.com>
 
 Package: emulator-manager
index 176cbd4..8ee4cf0 100644 (file)
@@ -140,17 +140,21 @@ public enum FontResources {
        }\r
 \r
        public static Font getDADefaultFont() {\r
-               String fontName = null;\r
-               if (EmulatorManager.isLinux() || EmulatorManager.isMac()) {\r
-                       fontName = "Dejavu Sans";\r
-               } else if (EmulatorManager.isWin()) {\r
-                       fontName = "Verdana";\r
-               } else {\r
-                       return Display.getCurrent().getSystemFont();\r
-               }\r
                if (defaultFont == null) {\r
+                       String fontName = null;\r
+                       if (EmulatorManager.isLinux()) {\r
+                               fontName = "Dejavu Sans";\r
+                       } else if (EmulatorManager.isWin()) {\r
+                               fontName = "Verdana";\r
+                       } else if (EmulatorManager.isMac()) {\r
+                               fontName = "Lucida Grande";\r
+                       } else {\r
+                               defaultFont = Display.getCurrent().getSystemFont();\r
+                               return defaultFont;\r
+                       }\r
                        defaultFont = new Font(Display.getCurrent(), new FontData[] { new FontData(fontName, 9, SWT.NORMAL) });\r
                }\r
+\r
                return defaultFont;\r
        }\r
 }
\ No newline at end of file
index 79b8844..58d0619 100644 (file)
@@ -34,6 +34,7 @@ import org.eclipse.swt.graphics.Font;
 import org.eclipse.swt.widgets.TreeItem;
 import org.tizen.emulator.manager.platform.BaseImage;
 import org.tizen.emulator.manager.resources.FontResources;
+import org.tizen.emulator.manager.resources.ImageResources;
 import org.tizen.emulator.manager.vms.VMProperty;
 
 public interface RowItem {}
@@ -51,11 +52,11 @@ class PropertyContent implements TreeContent {
                this.property = property;
                this.item = item;
 
-               // TODO
                item.setFont(FontResources.TREE_ITEM_FONT.getFont());
                for(ColumnContentHelper helper : ColumnContentHelper.getContentHelpers()) {
                        item.setText(helper.getIndex(), helper.getContent(property));
                }
+               item.setImage(0, ImageResources.LAUNCH.getImage());
        }
        
        public VMProperty getProperty() {
index 589705b..f55960b 100644 (file)
@@ -32,9 +32,12 @@ package org.tizen.emulator.manager.ui.list;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.KeyEvent;
 import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
 import org.eclipse.swt.layout.FillLayout;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Tree;
@@ -81,6 +84,7 @@ public class TreeListView extends AbstractListView {
                settingListener();
        }
 
+       private boolean isLaunchButton = false;
        private void settingListener() {
                /*
                vmsTree.addFocusListener(new FocusListener() {
@@ -98,6 +102,54 @@ public class TreeListView extends AbstractListView {
                        
                });
                */
+
+               vmsTree.addMouseListener(new MouseListener() {
+
+                       @Override
+                       public void mouseDoubleClick(MouseEvent e) {
+                               if (vmsTree.getSelection() != null) {
+                                       TreeItem item = vmsTree.getSelection()[0];
+                                       if (item.getData() instanceof PropertyContent) {
+                                               PropertyContent content = (PropertyContent)item.getData();
+                                               VMsMainView.getInstance().launchEmulator(content.property);
+                                       }
+                               }
+                               isLaunchButton = false;
+                       }
+
+                       @Override
+                       public void mouseDown(MouseEvent e) {
+                               if (vmsTree.getSelection() != null) {
+                                       TreeItem item = vmsTree.getSelection()[0];
+                                       if (item.getData() instanceof PropertyContent) {
+                                               Rectangle rect = item.getImageBounds(0);
+                                               if (e.x > rect.x && e.x < rect.x + rect.width) {
+                                                       isLaunchButton = true;
+                                                       return;
+                                               }
+                                       }
+                               }
+                               isLaunchButton = false;
+                       }
+
+                       @Override
+                       public void mouseUp(MouseEvent e) {
+                               if (vmsTree.getSelection() != null) {
+                                       TreeItem item = vmsTree.getSelection()[0];
+                                       if (item.getData() instanceof PropertyContent) {
+                                               Rectangle rect = item.getImageBounds(0);
+                                               if (e.x > rect.x && e.x < rect.x + rect.width) {
+                                                       if (isLaunchButton) {
+                                                               PropertyContent content = (PropertyContent)item.getData();
+                                                               VMsMainView.getInstance().launchEmulator(content.property);
+                                                       }
+                                               }
+                                       }
+                               }
+                               isLaunchButton = false;
+                       }
+               });
+
                vmsTree.addSelectionListener(new SelectionListener() {
                        @Override
                        public void widgetSelected(SelectionEvent e) {
index b44a868..15fecc9 100644 (file)
@@ -32,6 +32,8 @@ package org.tizen.emulator.manager.ui.list;
 import java.util.ArrayList;
 
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseListener;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.widgets.Composite;
@@ -84,6 +86,21 @@ public class VMButtonFactory {
                                
                        }
                });
+               b.addMouseListener(new MouseListener() {
+
+                       @Override
+                       public void mouseDoubleClick(MouseEvent e) {
+                               ((VMButton)e.widget).clickLaunchButton();
+                       }
+
+                       @Override
+                       public void mouseDown(MouseEvent e) {
+                       }
+
+                       @Override
+                       public void mouseUp(MouseEvent e) {
+                       }
+               });
                buttons.add(b);
                return b;
        }