/**
+ * Hardware Key
*
- *
- * Copyright (C) 2011 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ * Copyright (C) 2011 - 2013 Samsung Electronics Co., Ltd. All rights reserved.
*
* Contact:
* GiWoong Kim <giwoong.kim@samsung.com>
import org.tizen.emulator.skin.util.SkinUtil;
public class HWKey {
+ private String name;
private int keyCode;
private SkinRegion region;
private String tooltip;
+ /**
+ * Constructor
+ */
public HWKey() {
+ this.name = "unknown";
this.keyCode = SkinUtil.UNKNOWN_KEYCODE;
}
+ public HWKey(String name, int keyCode, SkinRegion region, String tooltip) {
+ this.name = name;
+ this.keyCode = keyCode;
+ this.region = region;
+ this.tooltip = tooltip;
+ }
+
+ /* name */
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
/* keycode */
public int getKeyCode() {
return keyCode;
@Override
public void mouseUp(MouseEvent e) {
if (e.button == 1) { /* left button */
- logger.info("mouseUp in Skin");
-
isGrabbedShell = false;
grabPosition.x = grabPosition.y = 0;
/* HW key handling */
HWKey pressedHWKey = currentState.getCurrentPressedHWKey();
if (pressedHWKey == null) {
+ logger.info("mouseUp in Skin");
return;
}
if (pressedHWKey.getKeyCode() != SkinUtil.UNKNOWN_KEYCODE) {
+ logger.info(pressedHWKey.getName() + " key is released");
+
/* send event */
KeyEventData keyEventData = new KeyEventData(
KeyEventType.RELEASED.value(), pressedHWKey.getKeyCode(), 0, 0);
@Override
public void mouseDown(MouseEvent e) {
if (1 == e.button) { /* left button */
- logger.info("mouseDown in Skin");
-
isGrabbedShell = true;
grabPosition.x = e.x;
grabPosition.y = e.y;
final HWKey hwKey = SkinUtil.getHWKey(e.x, e.y,
currentState.getCurrentRotationId(), currentState.getCurrentScale());
if (hwKey == null) {
+ logger.info("mouseDown in Skin");
return;
}
if (hwKey.getKeyCode() != SkinUtil.UNKNOWN_KEYCODE) {
+ logger.info(hwKey.getName() + " key is pressed");
+
/* send event */
KeyEventData keyEventData = new KeyEventData(
KeyEventType.PRESSED.value(), hwKey.getKeyCode(), 0, 0);
return null;
}
- for (KeyMapType keyMap : keyMapList) {
- RegionType region = keyMap.getRegion();
+ for (KeyMapType keyEntry : keyMapList) {
+ RegionType region = keyEntry.getRegion();
int scaledX = (int) (region.getLeft() * convertedScale);
int scaledY = (int) (region.getTop() * convertedScale);
int scaledWidth = (int) (region.getWidth() * convertedScale);
int scaledHeight = (int) (region.getHeight() * convertedScale);
- if (isInGeometry(currentX, currentY, scaledX, scaledY, scaledWidth, scaledHeight)) {
- EventInfoType eventInfo = keyMap.getEventInfo();
+ if (isInGeometry(currentX, currentY,
+ scaledX, scaledY, scaledWidth, scaledHeight)) {
+ EventInfoType eventInfo = keyEntry.getEventInfo();
- HWKey hwKey = new HWKey();
- hwKey.setKeyCode(eventInfo.getKeyCode());
- hwKey.setRegion(new SkinRegion(scaledX, scaledY, scaledWidth, scaledHeight));
- hwKey.setTooltip(keyMap.getTooltip());
+ HWKey hwKey = new HWKey(
+ keyEntry.getEventInfo().getKeyName(),
+ eventInfo.getKeyCode(),
+ new SkinRegion(scaledX, scaledY, scaledWidth, scaledHeight),
+ keyEntry.getTooltip());
return hwKey;
}