gesture_event_data.cc revision 0529e5d033099cbfc42635f6f6183833b09dff6e
1f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard// Copyright 2014 The Chromium Authors. All rights reserved.
2f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard// Use of this source code is governed by a BSD-style license that can be
3f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard// found in the LICENSE file.
4f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard
5f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard#include "ui/events/gesture_detection/gesture_event_data.h"
6f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard
7f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard#include "base/logging.h"
8f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard
9f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellardnamespace ui {
10f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard
11f98f2ce29e6e2996fa58f38979143eceaa818335Tom StellardGestureEventData::GestureEventData(EventType type,
12f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   int motion_event_id,
13f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   base::TimeTicks time,
14f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   float x,
15f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   float y,
164fb224e3bd7655e25bc1f43d05a0922098aae4e0Vincent Lejeune                                   int touch_point_count,
17f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   const gfx::RectF& bounding_box,
1858a2cbef4aac9ee7d530dfb690c78d6fc11a2371Chandler Carruth                                   const GestureEventDetails& details)
19f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard    : type(type),
20c0b0c677a1138f0a5ce1435fc1e70cef38fd95c8Tom Stellard      motion_event_id(motion_event_id),
21f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard      time(time),
22c0b0c677a1138f0a5ce1435fc1e70cef38fd95c8Tom Stellard      x(x),
235c35290fa35ae234fed02496404cb0fc37e1c8a5Benjamin Kramer      y(y),
24c0b0c677a1138f0a5ce1435fc1e70cef38fd95c8Tom Stellard      details(details) {
25f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  DCHECK(motion_event_id >= 0);
26dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines  DCHECK_NE(0, touch_point_count);
27dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines  DCHECK(ET_GESTURE_TYPE_START <= type && type <= ET_GESTURE_TYPE_END);
28354362524a72b3fa43a6c09380b7ae3b2380cbbaJuergen Ributzka  this->details.set_touch_points(touch_point_count);
29f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  this->details.set_bounding_box(bounding_box);
30f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard}
31cd81d94322a39503e4a3e87b6ee03d4fcb3465fbStephen Hines
32cd81d94322a39503e4a3e87b6ee03d4fcb3465fbStephen HinesGestureEventData::GestureEventData(EventType type,
33cd81d94322a39503e4a3e87b6ee03d4fcb3465fbStephen Hines                                   int motion_event_id,
34f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   base::TimeTicks time,
35f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   float x,
36f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   float y,
37f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   int touch_point_count,
38f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard                                   const gfx::RectF& bounding_box)
39f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard    : type(type),
40f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard      motion_event_id(motion_event_id),
41f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard      time(time),
42f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard      x(x),
43f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard      y(y),
44f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard      details(GestureEventDetails(type, 0, 0)) {
45f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  DCHECK(motion_event_id >= 0);
46f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  DCHECK_NE(0, touch_point_count);
47f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  DCHECK(ET_GESTURE_TYPE_START <= type && type <= ET_GESTURE_TYPE_END);
48f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  details.set_touch_points(touch_point_count);
49f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard  details.set_bounding_box(bounding_box);
50f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard}
51f98f2ce29e6e2996fa58f38979143eceaa818335Tom Stellard
52f98f2ce29e6e2996fa58f38979143eceaa818335Tom StellardGestureEventData::GestureEventData() : type(ET_UNKNOWN), x(0), y(0) {}
53692ee102ebef535d311c35d53457028083e5c5beTom Stellard
54cd81d94322a39503e4a3e87b6ee03d4fcb3465fbStephen Hines}  //  namespace ui
55cd81d94322a39503e4a3e87b6ee03d4fcb3465fbStephen Hines