[aseprite] 40/128: Unify she::InputDevice and ui::PointerType
Tobias Hansen
thansen at moszumanska.debian.org
Mon May 9 21:24:21 UTC 2016
This is an automated email from the git hooks/post-receive script.
thansen pushed a commit to branch master
in repository aseprite.
commit 7b4511a5df0cee641088085a19486b6f884a2277
Author: David Capello <davidcapello at gmail.com>
Date: Wed Apr 20 22:49:03 2016 -0300
Unify she::InputDevice and ui::PointerType
---
src/she/event.h | 19 ++++++-------------
src/{ui => she}/pointer_type.h | 10 +++++-----
src/she/win/window.h | 34 +++++++++++++++++-----------------
src/ui/manager.cpp | 24 ++++++------------------
src/ui/pointer_type.h | 10 +++-------
5 files changed, 37 insertions(+), 60 deletions(-)
diff --git a/src/she/event.h b/src/she/event.h
index 8d280cc..ed9415e 100644
--- a/src/she/event.h
+++ b/src/she/event.h
@@ -11,6 +11,7 @@
#include "gfx/point.h"
#include "gfx/size.h"
#include "she/keys.h"
+#include "she/pointer_type.h"
#include <string>
#include <vector>
@@ -41,14 +42,6 @@ namespace she {
TouchMagnify,
};
- enum InputDevice {
- UnknownDevice,
- MouseDevice,
- MultitouchDevice, // Multitouch device with finger gestures
- StylusDevice, // Pen/stylus device
- EraserDevice, // Inverted-stylus device
- };
-
enum MouseButton {
NoneButton,
LeftButton,
@@ -65,7 +58,7 @@ namespace she {
m_unicodeChar(0),
m_repeat(0),
m_preciseWheel(false),
- m_device(UnknownDevice),
+ m_pointerType(PointerType::Unknown),
m_button(NoneButton),
m_magnification(0.0),
m_pressure(0.0) {
@@ -84,10 +77,10 @@ namespace she {
// We suppose that if we are receiving precise scrolling deltas,
// it means that the user is using a touch-like surface (trackpad,
// magic mouse scrolling, touch wacom tablet, etc.)
- // TODO change this with the new InputDevice::MultitouchDevice
+ // TODO change this with the new PointerType::Multitouch
bool preciseWheel() const { return m_preciseWheel; }
- InputDevice device() const { return m_device; }
+ PointerType pointerType() const { return m_pointerType; }
MouseButton button() const { return m_button; }
double magnification() const { return m_magnification; }
double pressure() const { return m_pressure; }
@@ -103,7 +96,7 @@ namespace she {
void setPosition(const gfx::Point& pos) { m_position = pos; }
void setWheelDelta(const gfx::Point& delta) { m_wheelDelta = delta; }
void setPreciseWheel(bool precise) { m_preciseWheel = precise; }
- void setDevice(InputDevice device) { m_device = device; }
+ void setPointerType(PointerType pointerType) { m_pointerType = pointerType; }
void setButton(MouseButton button) { m_button = button; }
void setMagnification(double magnification) { m_magnification = magnification; }
void setPressure(double pressure) { m_pressure = pressure; }
@@ -119,7 +112,7 @@ namespace she {
gfx::Point m_position;
gfx::Point m_wheelDelta;
bool m_preciseWheel;
- InputDevice m_device;
+ PointerType m_pointerType;
MouseButton m_button;
// For TouchMagnify event
diff --git a/src/ui/pointer_type.h b/src/she/pointer_type.h
similarity index 67%
copy from src/ui/pointer_type.h
copy to src/she/pointer_type.h
index 8a17928..7e4f2c7 100644
--- a/src/ui/pointer_type.h
+++ b/src/she/pointer_type.h
@@ -1,14 +1,14 @@
-// Aseprite UI Library
+// SHE library
// Copyright (C) 2016 David Capello
//
// This file is released under the terms of the MIT license.
// Read LICENSE.txt for more information.
-#ifndef UI_POINTER_TYPE_H_INCLUDED
-#define UI_POINTER_TYPE_H_INCLUDED
+#ifndef SHE_POINTER_TYPE_H_INCLUDED
+#define SHE_POINTER_TYPE_H_INCLUDED
#pragma once
-namespace ui {
+namespace she {
enum class PointerType {
Unknown,
@@ -18,6 +18,6 @@ namespace ui {
Eraser
};
-} // namespace ui
+} // namespace she
#endif
diff --git a/src/she/win/window.h b/src/she/win/window.h
index e58f804..00c0096 100644
--- a/src/she/win/window.h
+++ b/src/she/win/window.h
@@ -43,7 +43,7 @@ namespace she {
, m_hasMouse(false)
, m_captureMouse(false)
, m_hpenctx(nullptr)
- , m_device(Event::UnknownDevice)
+ , m_pointerType(PointerType::Unknown)
, m_pressure(0.0) {
registerClass();
m_hwnd = createHwnd(this, width, height);
@@ -325,8 +325,8 @@ namespace she {
_TrackMouseEvent(&tme);
}
- if (m_device != Event::UnknownDevice) {
- ev.setDevice(m_device);
+ if (m_pointerType != PointerType::Unknown) {
+ ev.setPointerType(m_pointerType);
ev.setPressure(m_pressure);
}
@@ -361,8 +361,8 @@ namespace she {
msg == WM_RBUTTONDOWN ? Event::RightButton:
msg == WM_MBUTTONDOWN ? Event::MiddleButton: Event::NoneButton);
- if (m_device != Event::UnknownDevice) {
- ev.setDevice(m_device);
+ if (m_pointerType != PointerType::Unknown) {
+ ev.setPointerType(m_pointerType);
ev.setPressure(m_pressure);
}
@@ -384,8 +384,8 @@ namespace she {
msg == WM_RBUTTONUP ? Event::RightButton:
msg == WM_MBUTTONUP ? Event::MiddleButton: Event::NoneButton);
- if (m_device != Event::UnknownDevice) {
- ev.setDevice(m_device);
+ if (m_pointerType != PointerType::Unknown) {
+ ev.setPointerType(m_pointerType);
ev.setPressure(m_pressure);
}
@@ -412,8 +412,8 @@ namespace she {
msg == WM_RBUTTONDBLCLK ? Event::RightButton:
msg == WM_MBUTTONDBLCLK ? Event::MiddleButton: Event::NoneButton);
- if (m_device != Event::UnknownDevice) {
- ev.setDevice(m_device);
+ if (m_pointerType != PointerType::Unknown) {
+ ev.setPointerType(m_pointerType);
ev.setPressure(m_pressure);
}
@@ -613,7 +613,7 @@ namespace she {
case WT_PROXIMITY: {
bool entering_ctx = (LOWORD(lparam) ? true: false);
if (!entering_ctx)
- m_device = Event::UnknownDevice;
+ m_pointerType = PointerType::Unknown;
break;
}
@@ -625,12 +625,12 @@ namespace she {
if (api.packet(ctx, serial, &packet)) {
if (packet.pkCursor == 2 || packet.pkCursor == 5)
- m_device = Event::EraserDevice;
+ m_pointerType = PointerType::Eraser;
else
- m_device = Event::StylusDevice;
+ m_pointerType = PointerType::Pen;
}
else
- m_device = Event::UnknownDevice;
+ m_pointerType = PointerType::Unknown;
}
case WT_PACKET: {
@@ -643,12 +643,12 @@ namespace she {
m_pressure = packet.pkNormalPressure / 1000.0; // TODO get the maximum value
if (packet.pkCursor == 2 || packet.pkCursor == 5)
- m_device = Event::EraserDevice;
+ m_pointerType = PointerType::Eraser;
else
- m_device = Event::StylusDevice;
+ m_pointerType = PointerType::Pen;
}
else
- m_device = Event::UnknownDevice;
+ m_pointerType = PointerType::Unknown;
break;
}
@@ -755,7 +755,7 @@ namespace she {
// Wintab API data
HCTX m_hpenctx;
- Event::InputDevice m_device;
+ PointerType m_pointerType;
double m_pressure;
};
diff --git a/src/ui/manager.cpp b/src/ui/manager.cpp
index 3d0b9bf..7f3ea7a 100644
--- a/src/ui/manager.cpp
+++ b/src/ui/manager.cpp
@@ -276,18 +276,6 @@ static MouseButtons mouse_buttons_from_she_to_ui(const she::Event& sheEvent)
}
}
-static PointerType pointer_type_from_she_event(const she::Event& sheEvent)
-{
- switch (sheEvent.device()) {
- case she::Event::MouseDevice: return PointerType::Mouse; break;
- case she::Event::MultitouchDevice: return PointerType::Multitouch; break;
- case she::Event::StylusDevice: return PointerType::Pen; break;
- case she::Event::EraserDevice: return PointerType::Eraser; break;
- default:
- return PointerType::Unknown;
- }
-}
-
void Manager::generateMessagesFromSheEvents()
{
she::Event lastMouseMoveEvent;
@@ -365,7 +353,7 @@ void Manager::generateMessagesFromSheEvents()
sheEvent.position(),
m_mouseButtons,
sheEvent.modifiers(),
- pointer_type_from_she_event(sheEvent));
+ sheEvent.pointerType());
lastMouseMoveEvent = sheEvent;
break;
}
@@ -379,7 +367,7 @@ void Manager::generateMessagesFromSheEvents()
sheEvent.position(),
pressedButton,
sheEvent.modifiers(),
- pointer_type_from_she_event(sheEvent));
+ sheEvent.pointerType());
break;
}
@@ -392,7 +380,7 @@ void Manager::generateMessagesFromSheEvents()
sheEvent.position(),
releasedButton,
sheEvent.modifiers(),
- pointer_type_from_she_event(sheEvent));
+ sheEvent.pointerType());
break;
}
@@ -402,14 +390,14 @@ void Manager::generateMessagesFromSheEvents()
sheEvent.position(),
clickedButton,
sheEvent.modifiers(),
- pointer_type_from_she_event(sheEvent));
+ sheEvent.pointerType());
break;
}
case she::Event::MouseWheel: {
handleMouseWheel(sheEvent.position(), m_mouseButtons,
sheEvent.modifiers(),
- pointer_type_from_she_event(sheEvent),
+ sheEvent.pointerType(),
sheEvent.wheelDelta(),
sheEvent.preciseWheel());
break;
@@ -432,7 +420,7 @@ void Manager::generateMessagesFromSheEvents()
sheEvent = lastMouseMoveEvent;
generateSetCursorMessage(sheEvent.position(),
sheEvent.modifiers(),
- pointer_type_from_she_event(sheEvent));
+ sheEvent.pointerType());
}
}
diff --git a/src/ui/pointer_type.h b/src/ui/pointer_type.h
index 8a17928..09740e5 100644
--- a/src/ui/pointer_type.h
+++ b/src/ui/pointer_type.h
@@ -8,15 +8,11 @@
#define UI_POINTER_TYPE_H_INCLUDED
#pragma once
+#include "she/pointer_type.h"
+
namespace ui {
- enum class PointerType {
- Unknown,
- Mouse,
- Multitouch,
- Pen,
- Eraser
- };
+ typedef she::PointerType PointerType;
} // namespace ui
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/aseprite.git
More information about the Pkg-games-commits
mailing list