GUI2: small fixups to touch event backend
This commit is contained in:
parent
fb27d61f07
commit
823d5b423d
2 changed files with 22 additions and 3 deletions
|
@ -78,6 +78,19 @@ typedef std::function<void(dispatcher& dispatcher,
|
|||
const utf8::string& unicode)>
|
||||
signal_keyboard_function;
|
||||
|
||||
/**
|
||||
* Callback function signature.
|
||||
*
|
||||
* This function is used for the callbacks in set_event_touch.
|
||||
*/
|
||||
typedef std::function<void(dispatcher& dispatcher,
|
||||
const ui_event event,
|
||||
bool& handled,
|
||||
bool& halt,
|
||||
const point& pos,
|
||||
const point& distance)>
|
||||
signal_touch_function;
|
||||
|
||||
/**
|
||||
* Callback function signature.
|
||||
*
|
||||
|
@ -375,7 +388,7 @@ public:
|
|||
*/
|
||||
template <ui_event E>
|
||||
typename std::enable_if<has_key<set_event_touch, E>::value>::type
|
||||
connect_signal(const set_event_touch& signal,
|
||||
connect_signal(const signal_touch_function& signal,
|
||||
const queue_position position = back_child)
|
||||
{
|
||||
signal_touch_queue_.connect_signal(E, position, signal);
|
||||
|
@ -393,7 +406,7 @@ public:
|
|||
*/
|
||||
template <ui_event E>
|
||||
typename std::enable_if<has_key<set_event_touch, E>::value>::type
|
||||
disconnect_signal(const set_event_touch& signal,
|
||||
disconnect_signal(const signal_touch_function& signal,
|
||||
const queue_position position = back_child)
|
||||
{
|
||||
signal_touch_queue_.disconnect_signal(E, position, signal);
|
||||
|
@ -699,7 +712,7 @@ private:
|
|||
signal_queue<signal_keyboard_function> signal_keyboard_queue_;
|
||||
|
||||
/** Signal queue for callbacks in set_event_touch. */
|
||||
signal_queue<set_event_touch> signal_touch_queue_;
|
||||
signal_queue<signal_touch_function> signal_touch_queue_;
|
||||
|
||||
/** Signal queue for callbacks in set_event_notification. */
|
||||
signal_queue<signal_notification_function> signal_notification_queue_;
|
||||
|
|
|
@ -413,6 +413,10 @@ void sdl_event_handler::handle_event(const SDL_Event& event)
|
|||
text_input(event.text.text);
|
||||
break;
|
||||
|
||||
case SDL_FINGERMOTION:
|
||||
// TODO?
|
||||
break;
|
||||
|
||||
#if(defined(_X11) && !defined(__APPLE__)) || defined(_WIN32)
|
||||
case SDL_SYSWMEVENT:
|
||||
/* DO NOTHING */
|
||||
|
@ -422,6 +426,8 @@ void sdl_event_handler::handle_event(const SDL_Event& event)
|
|||
// Silently ignored events.
|
||||
case SDL_KEYUP:
|
||||
case DOUBLE_CLICK_EVENT:
|
||||
case SDL_FINGERUP:
|
||||
case SDL_FINGERDOWN:
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
Loading…
Add table
Reference in a new issue