Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. /*
  2.  * This file is part of libdom.
  3.  * Licensed under the MIT License,
  4.  *                http://www.opensource.org/licenses/mit-license.php
  5.  * Copyright 2009 Bo Yang <struggleyb.nku@gmail.com>
  6.  */
  7.  
  8. #ifndef dom_interntal_events_mouse_event_h_
  9. #define dom_interntal_events_mouse_event_h_
  10.  
  11. #include <dom/events/mouse_event.h>
  12.  
  13. #include "events/ui_event.h"
  14.  
  15. /**
  16.  * The mouse event
  17.  */
  18. struct dom_mouse_event {
  19.         struct dom_ui_event base;       /**< Base class */
  20.  
  21.         int32_t sx;     /**< ScreenX */
  22.         int32_t sy;     /**< ScreenY */
  23.         int32_t cx;     /**< ClientX */
  24.         int32_t cy;     /**< ClientY */
  25.  
  26.         uint32_t modifier_state;        /**< The modifier keys state */
  27.  
  28.         unsigned short button;  /**< Which button is clicked */
  29.         dom_event_target *related_target;       /**< The related target */
  30. };
  31.  
  32. /* Constructor */
  33. dom_exception _dom_mouse_event_create(struct dom_document *doc,
  34.                 struct dom_mouse_event **evt);
  35.  
  36. /* Destructor */
  37. void _dom_mouse_event_destroy(struct dom_mouse_event *evt);
  38.  
  39. /* Initialise function */
  40. dom_exception _dom_mouse_event_initialise(struct dom_document *doc,
  41.                 struct dom_mouse_event *evt);
  42.  
  43. /* Finalise function */
  44. #define _dom_mouse_event_finalise _dom_ui_event_finalise
  45.  
  46.  
  47. #endif
  48.  
  49.