Home | History | Annotate | Download | only in gestures
      1 // Copyright (c) 2012 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 #ifndef UI_EVENTS_GESTURES_GESTURE_TYPES_H_
      6 #define UI_EVENTS_GESTURES_GESTURE_TYPES_H_
      7 
      8 #include "ui/events/events_export.h"
      9 
     10 namespace ui {
     11 
     12 class GestureEvent;
     13 class TouchEvent;
     14 
     15 // An abstract type for consumers of gesture-events created by the
     16 // gesture-recognizer.
     17 class EVENTS_EXPORT GestureConsumer {
     18  public:
     19   virtual ~GestureConsumer() {}
     20 };
     21 
     22 // GestureEventHelper creates implementation-specific gesture events and
     23 // can dispatch them.
     24 class EVENTS_EXPORT GestureEventHelper {
     25  public:
     26   virtual ~GestureEventHelper() {
     27   }
     28 
     29   // Returns true if this helper can dispatch events to |consumer|.
     30   virtual bool CanDispatchToConsumer(GestureConsumer* consumer) = 0;
     31   virtual void DispatchGestureEvent(GestureEvent* event) = 0;
     32   virtual void DispatchCancelTouchEvent(TouchEvent* event) = 0;
     33 };
     34 
     35 }  // namespace ui
     36 
     37 #endif  // UI_EVENTS_GESTURES_GESTURE_TYPES_H_
     38