Welcome to mirror list, hosted at ThFree Co, Russian Federation.

rmaevent.h « realmedia « include - github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 6a0ee2fc39cc5ba051027d067d89ffcdd62dc780 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/****************************************************************************
 * 
 *  $Id: rmaevent.h 7 2003-05-30 02:18:02Z gabest $
 *  
 *  Copyright (C) 1995-1999 RealNetworks, Inc. All rights reserved.
 *  
 *  This program contains proprietary information of RealNetworks, Inc.,
 *  and is licensed subject to restrictions on use and distribution.
 *
 *  rmaevent.h
 *
 */

#ifndef _RMAEVENT_H_
#define _RMAEVENT_H_

#define RMA_BASE_EVENT	0x00001000UL

// This class of events are events sent to site users of windowless
// sites to notify them of events on the site with platform independent
// messages.
#define RMA_SURFACE_EVENTS	RMA_BASE_EVENT + 0x00001000

// RMA_SURFACE_UPDATE is sent by the site to the renderer when the
// surface has damage and needs to be updated.  The event struct is
// filled out as follows:
//
//    ULONG32	event;		RMA_SURFACE_UPDATE
//    void*	window;	    Native Window - may be null if no window is associated with the site
//    void*	param1;	    IRMAVideoSurface*
//    void*	param2;	    UNIX - PNxWindow, Mac/Win - UNUSED
//
//    void*	result;	    HRESULT result code of message handling
//    BOOL	handled;    TRUE if handled, FALSE if not handled
//
#define RMA_SURFACE_UPDATE	RMA_SURFACE_EVENTS + 1

// Each event should document the values of PNxEvent struct expected
// on input and output.
// The next surface event should use this ID:
#define RMA_SURFACE_NEXT_EVENT RMA_SURFACE_EVENTS + 2

// This class of events are sent to site users to
// notify them of mouse events.
// All mouse events have the event structure filled out as follows:
//
//    UINT32	event;
//    void*	window;
//    void*	param1;	    PNxPoint struct with mouse position local to the renderer
//    void*	param2;	    UINT32 of flags for modifier keys
//    void*	result;	    HRESULT result code of message handling
//    BOOL	handled;    TRUE if handled, FALSE if not handled
//
#define RMA_MOUSE_EVENTS	(RMA_BASE_EVENT + 0x00002000)

#define RMA_SHIFT_KEY		0x00000001
#define RMA_CTRL_KEY		0x00000002
#define RMA_ALT_COMMAND_KEY	0x00000004	// Apple/Splat key

#define RMA_PRIMARY_BUTTON_DOWN	(RMA_MOUSE_EVENTS + 1)
#define RMA_PRIMARY_BUTTON_UP	(RMA_MOUSE_EVENTS + 2)
#define RMA_CONTEXT_BUTTON_DOWN	(RMA_MOUSE_EVENTS + 3)
#define RMA_CONTEXT_BUTTON_UP	(RMA_MOUSE_EVENTS + 4)
#define RMA_MOUSE_MOVE		(RMA_MOUSE_EVENTS + 5)
#define RMA_MOUSE_ENTER		(RMA_MOUSE_EVENTS + 6)
#define RMA_MOUSE_LEAVE		(RMA_MOUSE_EVENTS + 7)

// This class of events are sent to renderers to
// notify them of the validation of the window
// All window events have the event structure filled out as follows:
//
//    UINT32	event;
//    void*	window;
//    void*	UNUSED;
//    void*	UNUSED;
//    void*	result;	    HRESULT result code of message handling
//    BOOL	handled;    TRUE if handled, FALSE if not handled
//
#define RMA_WINDOW_EVENTS	RMA_BASE_EVENT + 0x00003000

#define RMA_ATTACH_WINDOW	RMA_WINDOW_EVENTS + 1
#define RMA_DETACH_WINDOW	RMA_WINDOW_EVENTS + 2

// Each event class should have a comment describing the kinds
// of events that belong to this class
// The next event class should use this base:
#define RMA_NEXT_EVENT_CLASS	RMA_BASE_EVENT + 0x00004000


#endif // _RMAEVENT_H_