Author: yradtsevich
Date: 2012-04-20 11:50:29 -0400 (Fri, 20 Apr 2012)
New Revision: 40384
Added:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/resources/cursors/
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/resources/cursors/rotate.gif
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ResizableSkin.java
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/DeviceComposite.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidComposite.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidResizableSkin.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidSkinDescriptor.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone3ResizableSkin.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone4ResizableSkin.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhoneComposite.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IOSPageTitleStyledText.java
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IPhoneSkinDescriptor.java
Log:
https://issues.jboss.org/browse/JBIDE-11053 : skinned browsersim should provide a way to
rotate phone "on" the skin
Added:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/resources/cursors/rotate.gif
===================================================================
(Binary files differ)
Property changes on:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/resources/cursors/rotate.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/DeviceComposite.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/DeviceComposite.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/DeviceComposite.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -2,6 +2,8 @@
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyledText;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Listener;
@@ -46,6 +48,7 @@
case SWT.MouseDown:
case SWT.MouseUp:
case SWT.MouseMove:
+ case SWT.MouseExit:
bodyComposite.addListener(eventType, listener);
for (Control child : bodyComposite.getChildren()) {
child.addListener(eventType, listener);
@@ -63,6 +66,7 @@
case SWT.MouseDown:
case SWT.MouseUp:
case SWT.MouseMove:
+ case SWT.MouseExit:
bodyComposite.removeListener(eventType, listener);
for (Control child :bodyComposite.getChildren()) {
child.removeListener(eventType, listener);
@@ -81,6 +85,32 @@
child.setMenu(menu);
}
}
-
+
+ public boolean isDeviceBody(Control contol) {
+ // XXX: simple implementation, there are some cases when this won't work
+ if (contol instanceof Composite) {
+ Composite composite = (Composite) contol;
+ if (composite.getParent() == bodyComposite && composite.getBackgroundImage()
!= null) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ public boolean isDeviceCorner(Point displayPoint) {
+ Point bodyPoint = bodyComposite.toControl(displayPoint);
+ Point bodySize = bodyComposite.getSize();
+ int cornersSize = getCornersSize();
+ Rectangle leftTopCorner = new Rectangle(0, 0, cornersSize, cornersSize);
+ Rectangle rightTopCorner = new Rectangle(bodySize.x - cornersSize, 0, cornersSize,
cornersSize);
+ Rectangle leftBottomCorner = new Rectangle(0, bodySize.y - cornersSize, cornersSize,
cornersSize);
+ Rectangle rightBottomCorner = new Rectangle(bodySize.x - cornersSize, bodySize.y -
cornersSize, cornersSize, cornersSize);
+
+ return leftTopCorner.contains(bodyPoint) || rightTopCorner.contains(bodyPoint)
+ || leftBottomCorner.contains(bodyPoint) || rightBottomCorner.contains(bodyPoint);
+ }
+
+ protected abstract int getCornersSize();
public abstract ImageButtonComposite getHomeButtonComposite();
}
Added:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ResizableSkin.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ResizableSkin.java
(rev 0)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ResizableSkin.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -0,0 +1,130 @@
+package org.jboss.tools.vpe.browsersim.ui.skin;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.MouseAdapter;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.graphics.Cursor;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.jboss.tools.vpe.browsersim.ui.ControlHandler;
+
+public abstract class ResizableSkin implements BrowserSimSkin {
+ protected DeviceComposite deviceComposite;
+ protected ControlHandler controlHandler;
+
+ protected void bindDeviceCompositeControls() {
+ deviceComposite.getBackButtonComposite().addMouseListener(new MouseAdapter() {
+ public void mouseDown(MouseEvent e) {
+ if (e.button == 1) {
+ controlHandler.goBack();
+ }
+ }
+ });
+ deviceComposite.getForwardButtonComposite().addMouseListener(new MouseAdapter() {
+ public void mouseDown(MouseEvent e) {
+ if (e.button == 1) {
+ controlHandler.goForward();
+ }
+ }
+ });
+ deviceComposite.getStopButtonComposite().addMouseListener(new MouseAdapter() {
+ public void mouseDown(MouseEvent e) {
+ if (e.button == 1) {
+ controlHandler.stop();
+ }
+ }
+ });
+ deviceComposite.getRefreshButtonComposite().addMouseListener(new MouseAdapter() {
+ public void mouseDown(MouseEvent e) {
+ if (e.button == 1) {
+ controlHandler.refresh();
+ }
+ }
+ });
+ if (deviceComposite.getHomeButtonComposite() != null) {
+ deviceComposite.getHomeButtonComposite().addMouseListener(new MouseAdapter() {
+ public void mouseDown(MouseEvent e) {
+ if (e.button == 1) {
+ controlHandler.goHome();
+ }
+ }
+ });
+ }
+ deviceComposite.getUrlText().addListener(SWT.DefaultSelection, new Listener() {
+ public void handleEvent(Event e) {
+ controlHandler.goToAddress(((Text)e.widget).getText());
+ }
+ });
+
+
+ Listener moveListener = new Listener() {
+ Point origin;
+ Point shellOrigin;
+
+ public void handleEvent(Event e) {
+ if (e.widget instanceof Composite && ((e.stateMask & SWT.BUTTON1) != 0 ||
e.button == 1)) { // left mouse Composite
+ Composite composite = (Composite) e.widget;
+ Shell shell = composite.getShell();
+
+ switch (e.type) {
+ case SWT.MouseDown:
+ origin = e.display.map(shell, null, e.x, e.y);
+ shellOrigin = shell.getLocation();
+ break;
+ case SWT.MouseUp:
+ origin = null;
+ break;
+ case SWT.MouseMove:
+ if (origin != null) {
+ Point p = e.display.map(shell, null, e.x, e.y);
+ shell.setLocation(shellOrigin.x + p.x - origin.x, shellOrigin.y + p.y -
origin.y);
+ }
+ break;
+ }
+ }
+ }
+ };
+ deviceComposite.addListener(SWT.MouseDown, moveListener);
+ deviceComposite.addListener(SWT.MouseUp, moveListener);
+ deviceComposite.addListener(SWT.MouseMove, moveListener);
+
+ final ImageList imageList = new ImageList(deviceComposite);
+ Listener rotationHotSpotListener = new Listener() {
+ @Override
+ public void handleEvent(Event event) {
+ Control contol = event.display.getCursorControl();
+ Point displayPoint = event.display.getCursorLocation();
+ Image rotateImage = imageList.getImage("cursors/rotate.gif");
+ if (deviceComposite.isDeviceCorner(displayPoint) &&
deviceComposite.isDeviceBody(contol)) {
+ deviceComposite.setCursor(new Cursor(Display.getCurrent(),
rotateImage.getImageData(), 0, 0));
+ } else {
+ deviceComposite.setCursor(null);
+ }
+ }
+ };
+ deviceComposite.addListener(SWT.MouseMove, rotationHotSpotListener);
+ deviceComposite.addListener(SWT.MouseExit, rotationHotSpotListener);
+
+ Listener rotationHotSpotClickListener = new Listener() {
+ @Override
+ public void handleEvent(Event event) {
+ if (event.button == 1) {
+ Control contol = event.display.getCursorControl();
+ Point displayPoint = event.display.getCursorLocation();
+ if (deviceComposite.isDeviceCorner(displayPoint) &&
deviceComposite.isDeviceBody(contol)) {
+ controlHandler.rotate(false);
+ }
+ }
+ }
+ };
+
+ deviceComposite.addListener(SWT.MouseDown, rotationHotSpotClickListener);
+ }
+}
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidComposite.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidComposite.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidComposite.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -36,6 +36,7 @@
private ImageButtonComposite backButtonComposite;
private ImageButtonComposite homeButtonComposite;
private ImageButtonComposite refreshButtonComposite;
+ private int cornersSize;
/**
* Create the composite.
@@ -43,7 +44,7 @@
* @param skinDescriptor
* @param style
*/
- public AndroidComposite(Composite parent, AndroidSkinDescriptor skinDescriptor) {
+ public AndroidComposite(final Composite parent, AndroidSkinDescriptor skinDescriptor) {
super(parent, SWT.NONE);
imageList = new ImageList(this);
@@ -93,6 +94,7 @@
browserContainer = new Composite(androidOsCompositeContainer, SWT.NONE);
gridData = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1);
browserContainer.setLayoutData(gridData);
+ cornersSize = skinDescriptor.getCornersSize();
timeComposite.addMouseListener(new MouseAdapter() {
public void mouseDown(MouseEvent e) {
@@ -101,6 +103,23 @@
}
}
});
+
+
+
+// Runnable r = new Runnable() {
+// @Override
+// public void run() {
+// Point displayPoint = Display.getCurrent().getCursorLocation();
+// Point bodyPoint = bodyComposite.toControl(displayPoint);
+// if (bodyPoint.x < 100 && bodyPoint.y < 100) {
+//// bodyComposite.setCursor(new Cursor(Display.getCurrent(), SWT.CURSOR_HAND));
+// } else {
+// bodyComposite.setCursor(null);
+// }
+// Display.getCurrent().timerExec(100, this);
+// }
+// };
+// Display.getCurrent().timerExec(500, r);
}
/* (non-Javadoc)
@@ -202,4 +221,9 @@
public StyledText getPageTitleStyledText() {
return null;
}
+
+ @Override
+ protected int getCornersSize() {
+ return cornersSize;
+ }
}
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidResizableSkin.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidResizableSkin.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidResizableSkin.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -9,7 +9,6 @@
import org.jboss.tools.vpe.browsersim.ui.skin.ImageDescriptor;
import org.jboss.tools.vpe.browsersim.ui.skin.ios.AppleIPhone3ResizableSkin;
import org.jboss.tools.vpe.browsersim.ui.skin.ios.ButtonDescriptor;
-import org.jboss.tools.vpe.browsersim.ui.skin.ios.IPhoneSkinDescriptor;
public class AndroidResizableSkin extends AppleIPhone3ResizableSkin {
private static final Point NORMAL_SKREEN_SIZE = new Point(240, 1);
@@ -34,6 +33,7 @@
new ImageDescriptor(bd + "17.png"), new ImageDescriptor(bd +
"18.png"), new ImageDescriptor(bd + "19.png", 1, 1, SWT.HORIZONTAL),
new ImageDescriptor(bd + "20.png"), new ImageDescriptor(bd +
"21.png")
};
int bodyGridSize = 5;
+ int cornersSize = 32;
String bd2 = "android/";
ButtonDescriptor backButtonDescriptor;
@@ -65,41 +65,9 @@
formData.bottom = new FormAttachment(100, -41);
refreshButtonDescriptor = new ButtonDescriptor(formData, bd2 +
"refresh.png", bd2 + "refresh.png", bd2 +
"refresh-selected.png");//XXX
}
- VERTICAL_DESCRIPTOR = new AndroidSkinDescriptor(bodyGridSize, bodyGridImageDescriptors,
iOsDescriptor,
+ VERTICAL_DESCRIPTOR = new AndroidSkinDescriptor(bodyGridSize, bodyGridImageDescriptors,
iOsDescriptor, cornersSize,
backButtonDescriptor, forwardButtonDescriptor, homeButtonDescriptor,
refreshButtonDescriptor);
}
- private static final IPhoneSkinDescriptor HORIZONTAL_IPHONE3_DESCRIPTOR;
- static {
- String bd = "ios/iphone3/horizontal/";
- ImageDescriptor iOsDescriptor = new ImageDescriptor(null, 5, 5, SWT.VERTICAL |
SWT.HORIZONTAL);
- ImageDescriptor[] bodyGridImageDescriptors = {
- new ImageDescriptor(bd + "01.png"), new ImageDescriptor(bd +
"02.png"), new ImageDescriptor(bd + "03.png", 1, 1, SWT.HORIZONTAL),
new ImageDescriptor(bd + "04.png"), new ImageDescriptor(bd + "05.png",
1, 1, SWT.HORIZONTAL), new ImageDescriptor(bd + "06.png"), new
ImageDescriptor(bd + "07.png"),
- new ImageDescriptor(bd + "08.png"), iOsDescriptor,
new ImageDescriptor(bd + "10.png"),
- new ImageDescriptor(bd + "11.png", 1, 1, SWT.VERTICAL),
new ImageDescriptor(bd + "12.png", 1, 1, SWT.VERTICAL),
- new ImageDescriptor(bd + "13.png"),
new ImageDescriptor(bd + "14.png"),
- new ImageDescriptor(bd + "15.png", 1, 1, SWT.VERTICAL),
new ImageDescriptor(bd + "16.png", 1, 1, SWT.VERTICAL),
- new ImageDescriptor(bd + "17.png"),
new ImageDescriptor(bd + "18.png"),
- new ImageDescriptor(bd + "19.png"), new ImageDescriptor(bd +
"20.png"), new ImageDescriptor(bd + "21.png", 1, 1, SWT.HORIZONTAL),
new ImageDescriptor(bd + "22.png"), new ImageDescriptor(bd + "23.png",
1, 1, SWT.HORIZONTAL), new ImageDescriptor(bd + "24.png"), new
ImageDescriptor(bd + "25.png"),
- };
- int bodyGridSize = 7;
- String bd2 = "ios/";
- ButtonDescriptor backButtonDescriptor;
- {
- FormData formData = new FormData();
- formData.left = new FormAttachment(0, 145);
- formData.bottom = new FormAttachment(100, -36);
- backButtonDescriptor = new ButtonDescriptor(formData, bd2 + "back.png", bd2
+ "back-disabled.png", bd2 + "back-selected.png");
- }
-
- ButtonDescriptor forwardButtonDescriptor;
- {
- FormData formData = new FormData();
- formData.left = new FormAttachment(0, 247);
- formData.bottom = new FormAttachment(100, -36);
- forwardButtonDescriptor = new ButtonDescriptor(formData, bd2 +
"forward.png", bd2 + "forward-disabled.png", bd2 +
"forward-selected.png");
- }
- HORIZONTAL_IPHONE3_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, backButtonDescriptor, forwardButtonDescriptor);
- }
@Override
protected Point getBordersSize(boolean vertical) {
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidSkinDescriptor.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidSkinDescriptor.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/android/AndroidSkinDescriptor.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -6,7 +6,8 @@
public class AndroidSkinDescriptor {
private int bodyGridSize;
private ImageDescriptor[] bodyGridImageDescriptors;
- private ImageDescriptor iOSDescriptor;
+ private ImageDescriptor osDescriptor;
+ private int cornersSize;
private ButtonDescriptor backButton;
private ButtonDescriptor forwardButton;
private ButtonDescriptor homeButton;
@@ -14,12 +15,13 @@
public AndroidSkinDescriptor(int bodyGridSize,
ImageDescriptor[] bodyGridImageDescriptors,
- ImageDescriptor iOSDescriptor, ButtonDescriptor backButton,
- ButtonDescriptor forwardButton, ButtonDescriptor homeButton,
- ButtonDescriptor refreshButton) {
+ ImageDescriptor iOSDescriptor, int cornersSize,
+ ButtonDescriptor backButton, ButtonDescriptor forwardButton,
+ ButtonDescriptor homeButton, ButtonDescriptor refreshButton) {
this.bodyGridSize = bodyGridSize;
this.bodyGridImageDescriptors = bodyGridImageDescriptors;
- this.iOSDescriptor = iOSDescriptor;
+ this.osDescriptor = iOSDescriptor;
+ this.cornersSize = cornersSize;
this.backButton = backButton;
this.forwardButton = forwardButton;
this.homeButton = homeButton;
@@ -35,9 +37,13 @@
}
public ImageDescriptor getAndroidOSDescriptor() {
- return iOSDescriptor;
+ return osDescriptor;
}
+ public int getCornersSize() {
+ return cornersSize;
+ }
+
public ButtonDescriptor getBackButton() {
return backButton;
}
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone3ResizableSkin.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone3ResizableSkin.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone3ResizableSkin.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -3,8 +3,6 @@
import java.util.Arrays;
import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Region;
import org.eclipse.swt.layout.FillLayout;
@@ -12,27 +10,25 @@
import org.eclipse.swt.layout.FormData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.ProgressBar;
import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
import org.jboss.tools.vpe.browsersim.browser.BrowserSimBrowser;
import org.jboss.tools.vpe.browsersim.browser.IBrowserSimBrowserFactory;
import org.jboss.tools.vpe.browsersim.model.DeviceOrientation;
import org.jboss.tools.vpe.browsersim.ui.ControlHandler;
import org.jboss.tools.vpe.browsersim.ui.skin.AppleIPhone3Skin;
-import org.jboss.tools.vpe.browsersim.ui.skin.BrowserSimSkin;
import org.jboss.tools.vpe.browsersim.ui.skin.DeviceComposite;
import org.jboss.tools.vpe.browsersim.ui.skin.ImageDescriptor;
+import org.jboss.tools.vpe.browsersim.ui.skin.ResizableSkin;
-public class AppleIPhone3ResizableSkin implements BrowserSimSkin {
+public class AppleIPhone3ResizableSkin extends ResizableSkin {
private static final Point NORMAL_SKREEN_SIZE = new Point(320, 480);
private static final Point NORMAL_SKIN_SIZE = new Point(384, 727);
private static final Point VERTICAL_BORDERS_SIZE = new Point(NORMAL_SKIN_SIZE.x -
NORMAL_SKREEN_SIZE.x, NORMAL_SKIN_SIZE.y - NORMAL_SKREEN_SIZE.y);
private static final Point HORIZONTAL_BORDERS_SIZE = new Point(VERTICAL_BORDERS_SIZE.y,
VERTICAL_BORDERS_SIZE.x);
private static final IPhoneSkinDescriptor VERTICAL_IPHONE3_DESCRIPTOR;
+ private static final int CORNERS_SIZE = 58;
static {
String bd = "ios/iphone3/vertical/";
ImageDescriptor iOsDescriptor = new ImageDescriptor(null, 5, 3, SWT.VERTICAL |
SWT.HORIZONTAL);
@@ -61,7 +57,7 @@
formData.bottom = new FormAttachment(100, -132);
forwardButtonDescriptor = new ButtonDescriptor(formData, bd2 +
"forward.png", bd2 + "forward-disabled.png", bd2 +
"forward-selected.png");
}
- VERTICAL_IPHONE3_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, backButtonDescriptor, forwardButtonDescriptor);
+ VERTICAL_IPHONE3_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, CORNERS_SIZE, backButtonDescriptor,
forwardButtonDescriptor);
}
private static final IPhoneSkinDescriptor HORIZONTAL_IPHONE3_DESCRIPTOR;
static {
@@ -93,7 +89,7 @@
formData.bottom = new FormAttachment(100, -36);
forwardButtonDescriptor = new ButtonDescriptor(formData, bd2 +
"forward.png", bd2 + "forward-disabled.png", bd2 +
"forward-selected.png");
}
- HORIZONTAL_IPHONE3_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, backButtonDescriptor, forwardButtonDescriptor);
+ HORIZONTAL_IPHONE3_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, CORNERS_SIZE, backButtonDescriptor,
forwardButtonDescriptor);
}
private IBrowserSimBrowserFactory browserFactory;
@@ -101,8 +97,6 @@
private Display display;
private Shell shell;
private BrowserSimBrowser browser;
- private ControlHandler controlHandler;
- private DeviceComposite deviceComposite;
@Override
public void setBrowserFactory(IBrowserSimBrowserFactory browserFactory) {
@@ -117,7 +111,7 @@
deviceComposite = new AppleIPhoneComposite(shell, VERTICAL_IPHONE3_DESCRIPTOR);
vertical = true;
- bindIPhoneCompositeControls();
+ bindDeviceCompositeControls();
Composite browserContainer = deviceComposite.getBrowserContainer();
browserContainer.setLayout(new FillLayout());
browser = browserFactory.createBrowser(browserContainer, SWT.NONE);
@@ -186,80 +180,6 @@
// });
}
- private void bindIPhoneCompositeControls() {
- deviceComposite.getBackButtonComposite().addMouseListener(new MouseAdapter() {
- public void mouseDown(MouseEvent e) {
- if (e.button == 1) {
- controlHandler.goBack();
- }
- }
- });
- deviceComposite.getForwardButtonComposite().addMouseListener(new MouseAdapter() {
- public void mouseDown(MouseEvent e) {
- if (e.button == 1) {
- controlHandler.goForward();
- }
- }
- });
- deviceComposite.getStopButtonComposite().addMouseListener(new MouseAdapter() {
- public void mouseDown(MouseEvent e) {
- if (e.button == 1) {
- controlHandler.stop();
- }
- }
- });
- deviceComposite.getRefreshButtonComposite().addMouseListener(new MouseAdapter() {
- public void mouseDown(MouseEvent e) {
- if (e.button == 1) {
- controlHandler.refresh();
- }
- }
- });
- if (deviceComposite.getHomeButtonComposite() != null) {
- deviceComposite.getHomeButtonComposite().addMouseListener(new MouseAdapter() {
- public void mouseDown(MouseEvent e) {
- if (e.button == 1) {
- controlHandler.goHome();
- }
- }
- });
- }
- deviceComposite.getUrlText().addListener(SWT.DefaultSelection, new Listener() {
- public void handleEvent(Event e) {
- controlHandler.goToAddress(((Text)e.widget).getText());
- }
- });
-
-
- Listener l = new Listener() {
- Point origin;
- Point shellOrigin;
-
- public void handleEvent(Event e) {
- if ((e.stateMask & SWT.BUTTON1) != 0 || e.button == 1) { // left mouse Composite
- switch (e.type) {
- case SWT.MouseDown:
- origin = AppleIPhone3ResizableSkin.this.display.map(shell, null, e.x, e.y);
- shellOrigin = shell.getLocation();
- break;
- case SWT.MouseUp:
- origin = null;
- break;
- case SWT.MouseMove:
- if (origin != null) {
- Point p = AppleIPhone3ResizableSkin.this.display.map(shell, null, e.x, e.y);
- shell.setLocation(shellOrigin.x + p.x - origin.x, shellOrigin.y + p.y -
origin.y);
- }
- break;
- }
- }
- }
- };
- deviceComposite.addListener(SWT.MouseDown, l);
- deviceComposite.addListener(SWT.MouseUp, l);
- deviceComposite.addListener(SWT.MouseMove, l);
- }
-
@Override
public BrowserSimBrowser getBrowser() {
return browser;
@@ -326,7 +246,7 @@
DeviceComposite oldDeviceComposite = deviceComposite;
deviceComposite = createDeviceComposite(shell, vertical);
- bindIPhoneCompositeControls();
+ bindDeviceCompositeControls();
Composite browserContainer = deviceComposite.getBrowserContainer();
browserContainer.setLayout(new FillLayout());
browser.setParent(browserContainer);
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone4ResizableSkin.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone4ResizableSkin.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhone4ResizableSkin.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -16,6 +16,7 @@
private static final int[] VISIBLE_REGION_VERTICAL = {40, 0, 254, 0, 255, 1, 261, 1,
262, 2, 265, 2, 266, 3, 267, 3, 268, 4, 270, 4, 271, 5, 272, 5, 274, 7, 275, 7, 278, 10,
279, 10, 282, 13, 282, 14, 285, 17, 285, 18, 287, 20, 287, 21, 288, 22, 288, 23, 289, 24,
289, 26, 290, 27, 290, 29, 291, 30, 291, 398, 290, 399, 290, 401, 289, 402, 289, 404, 288,
405, 288, 406, 287, 407, 287, 408, 285, 410, 285, 411, 283, 413, 283, 414, 278, 419, 277,
419, 275, 421, 274, 421, 272, 423, 271, 423, 270, 424, 269, 424, 268, 425, 266, 425, 265,
426, 263, 426, 262, 427, 257, 427, 256, 428, 38, 428, 37, 427, 33, 427, 32, 426, 30, 426,
29, 425, 27, 425, 26, 424, 25, 424, 24, 423, 23, 423, 22, 422, 21, 422, 18, 419, 17, 419,
11, 413, 11, 412, 9, 410, 9, 409, 8, 408, 8, 407, 7, 406, 7, 405, 6, 404, 6, 403, 5, 402,
5, 400, 4, 399, 4, 395, 3, 394, 3, 200, 2, 199, 0, 199, 0, 179, 2, 179, 3, 178, 3, 153, 2,
152, 0, 152, 0, 132, 2, 132, 3, 131, 3, 94, 2, 93, 1, 93, 0, 92, 0, 62, 1, 61, 2, 61, 3,
60!
, 3, 35, 4, 34, 4, 30, 5, 29, 5, 26, 6, 25, 6, 24, 7, 23, 7, 22, 8, 21, 8, 20, 9, 19, 9,
18, 12, 15, 12, 14, 17, 9, 18, 9, 20, 7, 21, 7, 23, 5, 24, 5, 25, 4, 26, 4, 27, 3, 29, 3,
30, 2, 33, 2, 34, 1, 39, 1};
private static final int[] VISIBLE_REGION_HORIZONTAL = {30, 0, 398, 0, 399, 1, 401, 1,
402, 2, 404, 2, 405, 3, 406, 3, 407, 4, 408, 4, 410, 6, 411, 6, 413, 8, 414, 8, 419, 13,
419, 14, 421, 16, 421, 17, 423, 19, 423, 20, 424, 21, 424, 22, 425, 23, 425, 25, 426, 26,
426, 28, 427, 29, 427, 34, 428, 35, 428, 253, 427, 254, 427, 258, 426, 259, 426, 261, 425,
262, 425, 264, 424, 265, 424, 266, 423, 267, 423, 268, 422, 269, 422, 270, 419, 273, 419,
274, 413, 280, 412, 280, 410, 282, 409, 282, 408, 283, 407, 283, 406, 284, 405, 284, 404,
285, 403, 285, 402, 286, 400, 286, 399, 287, 395, 287, 394, 288, 200, 288, 199, 289, 199,
291, 179, 291, 179, 289, 178, 288, 153, 288, 152, 289, 152, 291, 132, 291, 132, 289, 131,
288, 94, 288, 93, 289, 93, 290, 92, 291, 62, 291, 61, 290, 61, 289, 60, 288, 35, 288, 34,
287, 30, 287, 29, 286, 26, 286, 25, 285, 24, 285, 23, 284, 22, 284, 21, 283, 20, 283, 19,
282, 18, 282, 15, 279, 14, 279, 9, 274, 9, 273, 7, 271, 7, 270, 5, 268, 5, 267, 4, 266,
4!
, 265, 3, 264, 3, 262, 2, 261, 2, 258, 1, 257, 1, 252, 0, 251, 0, 37, 1, 36, 1, 30, 2,
29, 2, 26, 3, 25, 3, 24, 4, 23, 4, 21, 5, 20, 5, 19, 7, 17, 7, 16, 10, 13, 10, 12, 13, 9,
14, 9, 17, 6, 18, 6, 20, 4, 21, 4, 22, 3, 23, 3, 24, 2, 26, 2, 27, 1, 29, 1};
private static final IPhoneSkinDescriptor VERTICAL_DESCRIPTOR;
+ private static final int CORNERS_SIZE = 40;
static {
String bd = "ios/iphone4/vertical/";
ImageDescriptor iOsDescriptor = new ImageDescriptor(null, 5, 2, SWT.VERTICAL |
SWT.HORIZONTAL);
@@ -43,7 +44,7 @@
formData.bottom = new FormAttachment(100, -124);
forwardButtonDescriptor = new ButtonDescriptor(formData, bd2 +
"forward.png", bd2 + "forward-disabled.png", bd2 +
"forward-selected.png");
}
- VERTICAL_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize, bodyGridImageDescriptors,
iOsDescriptor, backButtonDescriptor, forwardButtonDescriptor);
+ VERTICAL_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize, bodyGridImageDescriptors,
iOsDescriptor, CORNERS_SIZE, backButtonDescriptor, forwardButtonDescriptor);
}
private static final IPhoneSkinDescriptor HORIZONTAL_DESCRIPTOR;
static {
@@ -75,7 +76,7 @@
formData.bottom = new FormAttachment(100, -33);
forwardButtonDescriptor = new ButtonDescriptor(formData, bd2 +
"forward.png", bd2 + "forward-disabled.png", bd2 +
"forward-selected.png");
}
- HORIZONTAL_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, backButtonDescriptor, forwardButtonDescriptor);
+ HORIZONTAL_DESCRIPTOR = new IPhoneSkinDescriptor(bodyGridSize,
bodyGridImageDescriptors, iOsDescriptor, CORNERS_SIZE, backButtonDescriptor,
forwardButtonDescriptor);
}
@Override
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhoneComposite.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhoneComposite.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/AppleIPhoneComposite.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -34,6 +34,7 @@
private IOSNavBarComposite navBarComposite;
private ImageButtonComposite forwardButtonComposite;
private ImageButtonComposite backButtonComposite;
+ private int cornersSize;
/**
* Create the composite.
@@ -89,6 +90,8 @@
browserContainer = new Composite(iOsCompositeContainer, SWT.NONE);
gridData = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1);
browserContainer.setLayoutData(gridData);
+
+ cornersSize = skinDescriptor.getCornersSize();
timeComposite.addMouseListener(new MouseAdapter() {
public void mouseDown(MouseEvent e) {
@@ -195,4 +198,9 @@
public ImageButtonComposite getHomeButtonComposite() {
return null;
}
+
+ @Override
+ protected int getCornersSize() {
+ return cornersSize;
+ }
}
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IOSPageTitleStyledText.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IOSPageTitleStyledText.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IOSPageTitleStyledText.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -15,7 +15,6 @@
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Device;
import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Composite;
import org.jboss.tools.vpe.browsersim.ui.skin.ImageList;
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IPhoneSkinDescriptor.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IPhoneSkinDescriptor.java 2012-04-20
15:25:28 UTC (rev 40383)
+++
trunk/vpe/plugins/org.jboss.tools.vpe.browsersim/src/org/jboss/tools/vpe/browsersim/ui/skin/ios/IPhoneSkinDescriptor.java 2012-04-20
15:50:29 UTC (rev 40384)
@@ -5,17 +5,19 @@
public class IPhoneSkinDescriptor {
private int bodyGridSize;
private ImageDescriptor[] bodyGridImageDescriptors;
- private ImageDescriptor iOSDescriptor;
+ private ImageDescriptor osDescriptor;
+ private int cornersSize;
private ButtonDescriptor backButton;
private ButtonDescriptor forwardButton;
public IPhoneSkinDescriptor(int bodyGridSize,
ImageDescriptor[] bodyGridImageDescriptors,
- ImageDescriptor iOSDescriptor, ButtonDescriptor backButton,
- ButtonDescriptor forwardButton) {
+ ImageDescriptor iOSDescriptor, int cornersSize,
+ ButtonDescriptor backButton, ButtonDescriptor forwardButton) {
this.bodyGridSize = bodyGridSize;
this.bodyGridImageDescriptors = bodyGridImageDescriptors;
- this.iOSDescriptor = iOSDescriptor;
+ this.osDescriptor = iOSDescriptor;
+ this.cornersSize = cornersSize;
this.backButton = backButton;
this.forwardButton = forwardButton;
}
@@ -29,8 +31,12 @@
}
public ImageDescriptor getiOSDescriptor() {
- return iOSDescriptor;
+ return osDescriptor;
}
+
+ public int getCornersSize() {
+ return cornersSize;
+ }
public ButtonDescriptor getBackButton() {
return backButton;