event_handler.cc revision d0247b1b59f9c528cb6df88b4f2b9afaf80d181e
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#include "ui/events/event_handler.h"
6
7#include "ui/events/event.h"
8#include "ui/events/event_dispatcher.h"
9
10namespace ui {
11
12EventHandler::EventHandler() {
13}
14
15EventHandler::~EventHandler() {
16  while (!dispatchers_.empty()) {
17    EventDispatcher* dispatcher = dispatchers_.top();
18    dispatchers_.pop();
19    dispatcher->OnHandlerDestroyed(this);
20  }
21}
22
23void EventHandler::OnEvent(Event* event) {
24  if (event->IsKeyEvent())
25    OnKeyEvent(static_cast<KeyEvent*>(event));
26  else if (event->IsMouseEvent())
27    OnMouseEvent(static_cast<MouseEvent*>(event));
28  else if (event->IsScrollEvent())
29    OnScrollEvent(static_cast<ScrollEvent*>(event));
30  else if (event->IsTouchEvent())
31    OnTouchEvent(static_cast<TouchEvent*>(event));
32  else if (event->IsGestureEvent())
33    OnGestureEvent(static_cast<GestureEvent*>(event));
34  else if (event->type() == ET_CANCEL_MODE)
35    OnCancelMode(static_cast<CancelModeEvent*>(event));
36}
37
38void EventHandler::OnKeyEvent(KeyEvent* event) {
39}
40
41void EventHandler::OnMouseEvent(MouseEvent* event) {
42}
43
44void EventHandler::OnScrollEvent(ScrollEvent* event) {
45}
46
47void EventHandler::OnTouchEvent(TouchEvent* event) {
48}
49
50void EventHandler::OnGestureEvent(GestureEvent* event) {
51}
52
53void EventHandler::OnCancelMode(CancelModeEvent* event) {
54}
55
56}  // namespace ui
57