]> git.vomp.tv Git - vompclient.git/blob - message.h
Preparations for dynamic mode switching
[vompclient.git] / message.h
1 /*\r
2     Copyright 2004-2005 Chris Tallon\r
3 \r
4     This file is part of VOMP.\r
5 \r
6     VOMP is free software; you can redistribute it and/or modify\r
7     it under the terms of the GNU General Public License as published by\r
8     the Free Software Foundation; either version 2 of the License, or\r
9     (at your option) any later version.\r
10 \r
11     VOMP is distributed in the hope that it will be useful,\r
12     but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
14     GNU General Public License for more details.\r
15 \r
16     You should have received a copy of the GNU General Public License\r
17     along with VOMP; if not, write to the Free Software\r
18     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.\r
19 */\r
20 \r
21 #ifndef MESSAGE_H\r
22 #define MESSAGE_H\r
23 \r
24 #include <stdio.h>\r
25 \r
26 class Message;\r
27 #include "defines.h"\r
28 \r
29 // Usage of messages is more dubious now that the single master mutex lock\r
30 // protects all gui actions. Reason(s) for usage:\r
31 // 1. View A wants something to be done by View B *after* View A has been deleted\r
32 // 2. A thread wants its object/view deleting *after* the thread has exited\r
33 \r
34 // Put a justification line after call to Message* m = new  Message() line\r
35 // So that the sources can be grepped for proper message useage\r
36 \r
37 class Message\r
38 {\r
39   public:\r
40     Message();\r
41 \r
42     void* from;\r
43     void* to;\r
44     ULONG message;\r
45     ULONG parameter;\r
46     ULONG tag;     // use this for identifying which object / question is being replied to\r
47 \r
48     const static ULONG QUESTION_YES = 1;\r
49     const static ULONG CLOSE_ME = 2;\r
50     const static ULONG PLAY_SELECTED_RECORDING = 3;\r
51     const static ULONG DELETE_SELECTED_RECORDING = 4;\r
52     const static ULONG SCREENSHOT = 5;\r
53     const static ULONG CHANNEL_CHANGE = 6;\r
54     const static ULONG RESUME_SELECTED_RECORDING = 7;\r
55     const static ULONG STOP_PLAYBACK = 9;\r
56     const static ULONG SERVER_SELECTED = 10;\r
57     const static ULONG VDR_CONNECTED = 11;\r
58     const static ULONG ADD_VIEW = 12;\r
59     const static ULONG REDRAW_LANG = 14;\r
60     const static ULONG EPG = 16;\r
61     const static ULONG EPG_CLOSE = 17;\r
62     const static ULONG CHANGED_OPTIONS = 18;\r
63     const static ULONG CONNECTION_LOST = 19;\r
64     const static ULONG MOVE_RECORDING = 20;\r
65     const static ULONG UDP_BUTTON = 21;\r
66     const static ULONG PLAYER_EVENT = 22;\r
67     const static ULONG AUDIO_CHANGE_CHANNEL = 23;\r
68     const static ULONG CHILD_CLOSE = 24;\r
69     const static ULONG MOUSE_MOVE = 25;\r
70     const static ULONG MOUSE_LBDOWN = 26;\r
71     const static ULONG CHANGE_LANGUAGE = 27;\r
72     const static ULONG LAST_VIEW_CLOSE = 28;\r
73     const static ULONG CHANGED_REMOTECONTROL = 29;\r
74     const static ULONG DELETE_SELECTED_TIMER = 30;\r
75     const static ULONG CHANGED_DEVICEOPTIONS = 31;\r
76     const static ULONG TELETEXTUPDATE = 32;\r
77     const static ULONG TELETEXTUPDATEFIRSTLINE = 33;\r
78     const static ULONG SUBTITLE_CHANGE_CHANNEL = 34;\r
79     const static ULONG MOUSE_ANDROID_SCROLL = 35;\r
80 };\r
81 \r
82 #endif\r