rmaevent.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:3k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. /****************************************************************************
  2.  * 
  3.  *  $Id: rmaevent.h,v 1.1 2003/05/30 02:17:36 gabest Exp $
  4.  *  
  5.  *  Copyright (C) 1995-1999 RealNetworks, Inc. All rights reserved.
  6.  *  
  7.  *  This program contains proprietary information of RealNetworks, Inc.,
  8.  *  and is licensed subject to restrictions on use and distribution.
  9.  *
  10.  *  rmaevent.h
  11.  *
  12.  */
  13. #ifndef _RMAEVENT_H_
  14. #define _RMAEVENT_H_
  15. #define RMA_BASE_EVENT 0x00001000UL
  16. // This class of events are events sent to site users of windowless
  17. // sites to notify them of events on the site with platform independent
  18. // messages.
  19. #define RMA_SURFACE_EVENTS RMA_BASE_EVENT + 0x00001000
  20. // RMA_SURFACE_UPDATE is sent by the site to the renderer when the
  21. // surface has damage and needs to be updated.  The event struct is
  22. // filled out as follows:
  23. //
  24. //    ULONG32 event; RMA_SURFACE_UPDATE
  25. //    void* window;     Native Window - may be null if no window is associated with the site
  26. //    void* param1;     IRMAVideoSurface*
  27. //    void* param2;     UNIX - PNxWindow, Mac/Win - UNUSED
  28. //
  29. //    void* result;     HRESULT result code of message handling
  30. //    BOOL handled;    TRUE if handled, FALSE if not handled
  31. //
  32. #define RMA_SURFACE_UPDATE RMA_SURFACE_EVENTS + 1
  33. // Each event should document the values of PNxEvent struct expected
  34. // on input and output.
  35. // The next surface event should use this ID:
  36. #define RMA_SURFACE_NEXT_EVENT RMA_SURFACE_EVENTS + 2
  37. // This class of events are sent to site users to
  38. // notify them of mouse events.
  39. // All mouse events have the event structure filled out as follows:
  40. //
  41. //    UINT32 event;
  42. //    void* window;
  43. //    void* param1;     PNxPoint struct with mouse position local to the renderer
  44. //    void* param2;     UINT32 of flags for modifier keys
  45. //    void* result;     HRESULT result code of message handling
  46. //    BOOL handled;    TRUE if handled, FALSE if not handled
  47. //
  48. #define RMA_MOUSE_EVENTS (RMA_BASE_EVENT + 0x00002000)
  49. #define RMA_SHIFT_KEY 0x00000001
  50. #define RMA_CTRL_KEY 0x00000002
  51. #define RMA_ALT_COMMAND_KEY 0x00000004 // Apple/Splat key
  52. #define RMA_PRIMARY_BUTTON_DOWN (RMA_MOUSE_EVENTS + 1)
  53. #define RMA_PRIMARY_BUTTON_UP (RMA_MOUSE_EVENTS + 2)
  54. #define RMA_CONTEXT_BUTTON_DOWN (RMA_MOUSE_EVENTS + 3)
  55. #define RMA_CONTEXT_BUTTON_UP (RMA_MOUSE_EVENTS + 4)
  56. #define RMA_MOUSE_MOVE (RMA_MOUSE_EVENTS + 5)
  57. #define RMA_MOUSE_ENTER (RMA_MOUSE_EVENTS + 6)
  58. #define RMA_MOUSE_LEAVE (RMA_MOUSE_EVENTS + 7)
  59. // This class of events are sent to renderers to
  60. // notify them of the validation of the window
  61. // All window events have the event structure filled out as follows:
  62. //
  63. //    UINT32 event;
  64. //    void* window;
  65. //    void* UNUSED;
  66. //    void* UNUSED;
  67. //    void* result;     HRESULT result code of message handling
  68. //    BOOL handled;    TRUE if handled, FALSE if not handled
  69. //
  70. #define RMA_WINDOW_EVENTS RMA_BASE_EVENT + 0x00003000
  71. #define RMA_ATTACH_WINDOW RMA_WINDOW_EVENTS + 1
  72. #define RMA_DETACH_WINDOW RMA_WINDOW_EVENTS + 2
  73. // Each event class should have a comment describing the kinds
  74. // of events that belong to this class
  75. // The next event class should use this base:
  76. #define RMA_NEXT_EVENT_CLASS RMA_BASE_EVENT + 0x00004000
  77. #endif // _RMAEVENT_H_