Home | History | Annotate | Download | only in base
      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 BASE_EVENT_TYPES_H_
      6 #define BASE_EVENT_TYPES_H_
      7 
      8 #include "build/build_config.h"
      9 
     10 #if defined(OS_WIN)
     11 #include <windows.h>
     12 #elif defined(USE_X11)
     13 typedef union _XEvent XEvent;
     14 #elif defined(OS_MACOSX)
     15 #if defined(__OBJC__)
     16 @class NSEvent;
     17 #else  // __OBJC__
     18 class NSEvent;
     19 #endif // __OBJC__
     20 #endif
     21 
     22 namespace base {
     23 
     24 // Cross platform typedefs for native event types.
     25 #if defined(OS_WIN)
     26 typedef MSG NativeEvent;
     27 #elif defined(USE_X11)
     28 typedef XEvent* NativeEvent;
     29 #elif defined(OS_MACOSX)
     30 typedef NSEvent* NativeEvent;
     31 #else
     32 typedef void* NativeEvent;
     33 #endif
     34 
     35 } // namespace base
     36 
     37 #endif  // BASE_EVENT_TYPES_H_
     38