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