Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / ui / events / gesture_detection / mock_motion_event.h
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include <vector>
6
7 #include "base/basictypes.h"
8 #include "base/time/time.h"
9 #include "ui/events/gesture_detection/motion_event.h"
10 #include "ui/gfx/geometry/point_f.h"
11
12 namespace ui {
13
14 struct MockMotionEvent : public MotionEvent {
15   enum { MAX_POINTERS = 3 };
16   enum { TOUCH_MAJOR = 10 };
17
18   MockMotionEvent();
19   explicit MockMotionEvent(Action action);
20   MockMotionEvent(Action action, base::TimeTicks time, float x, float y);
21   MockMotionEvent(Action action,
22                   base::TimeTicks time,
23                   float x0,
24                   float y0,
25                   float x1,
26                   float y1);
27   MockMotionEvent(Action action,
28                   base::TimeTicks time,
29                   float x0,
30                   float y0,
31                   float x1,
32                   float y1,
33                   float x2,
34                   float y2);
35   MockMotionEvent(Action action,
36                   base::TimeTicks time,
37                   const std::vector<gfx::PointF>& positions);
38   MockMotionEvent(const MockMotionEvent& other);
39   virtual ~MockMotionEvent();
40
41   // MotionEvent methods.
42   virtual Action GetAction() const OVERRIDE;
43   virtual int GetActionIndex() const OVERRIDE;
44   virtual size_t GetPointerCount() const OVERRIDE;
45   virtual int GetId() const OVERRIDE;
46   virtual int GetPointerId(size_t pointer_index) const OVERRIDE;
47   virtual float GetX(size_t pointer_index) const OVERRIDE;
48   virtual float GetY(size_t pointer_index) const OVERRIDE;
49   virtual float GetTouchMajor(size_t pointer_index) const OVERRIDE;
50   virtual float GetPressure(size_t pointer_index) const OVERRIDE;
51   virtual base::TimeTicks GetEventTime() const OVERRIDE;
52   virtual size_t GetHistorySize() const OVERRIDE;
53   virtual base::TimeTicks GetHistoricalEventTime(size_t historical_index) const
54       OVERRIDE;
55   virtual float GetHistoricalTouchMajor(size_t pointer_index,
56                                         size_t historical_index) const OVERRIDE;
57   virtual float GetHistoricalX(size_t pointer_index,
58                                size_t historical_index) const OVERRIDE;
59   virtual float GetHistoricalY(size_t pointer_index,
60                                size_t historical_index) const OVERRIDE;
61
62   virtual scoped_ptr<MotionEvent> Clone() const OVERRIDE;
63   virtual scoped_ptr<MotionEvent> Cancel() const OVERRIDE;
64
65   // Utility methods.
66   void SetId(int new_id);
67   void SetTime(base::TimeTicks new_time);
68   void PressPoint(float x, float y);
69   void MovePoint(size_t index, float x, float y);
70   void ReleasePoint();
71   void CancelPoint();
72   MotionEvent::Action action;
73   size_t pointer_count;
74   gfx::PointF points[MAX_POINTERS];
75   base::TimeTicks time;
76   int id;
77 };
78
79 }  // namespace ui