]> git.vomp.tv Git - vompclient.git/blob - message.h
Rewrite of ImageOMX to fix the PNG problem
[vompclient.git] / message.h
1 /*
2     Copyright 2004-2020 Chris Tallon
3
4     This file is part of VOMP.
5
6     VOMP is free software; you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by
8     the Free Software Foundation; either version 2 of the License, or
9     (at your option) any later version.
10
11     VOMP is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14     GNU General Public License for more details.
15
16     You should have received a copy of the GNU General Public License
17     along with VOMP.  If not, see <https://www.gnu.org/licenses/>.
18 */
19
20 #ifndef MESSAGE_H
21 #define MESSAGE_H
22
23 #include <stdio.h>
24
25 #include "defines.h"
26
27 class MessageReceiver;
28
29 class Message
30 {
31   public:
32
33     // Not using a pre-defined target if one is available is deprecated, and is now essential for CONTROL
34
35     enum PreDefinedTarget
36     {
37       NA = 0,
38       CONTROL,
39       BOXSTACK,
40       MOUSE_RECEIVER
41     };
42
43     Message();
44
45     void* from{};
46     PreDefinedTarget p_to{NA}; // If this is set 'to' is ignored
47     MessageReceiver* to{};
48     int message{};
49     ULONG parameter{};
50     ULONG tag{};     // use this for identifying which object / question is being replied to
51     void* data{};    // Use this for anything. Int, pointer, pointer to memory to be freed by the recipient, etc.
52
53     // Never use the values, only the names
54     const static int INVALID                       = 0;
55     const static int QUESTION_YES                  = 1;
56     const static int CLOSE_ME                      = 2;
57     const static int PLAY_SELECTED_RECORDING       = 3;
58     const static int DELETE_SELECTED_RECORDING     = 4;
59     const static int SCREENSHOT                    = 5;
60     const static int CHANNEL_CHANGE                = 6;
61     const static int RESUME_SELECTED_RECORDING     = 7;
62     const static int INPUT_EVENT                   = 8;
63     const static int STOP_PLAYBACK                 = 9;
64     const static int SERVER_SELECTED               = 10;
65     const static int VDR_CONNECTED                 = 11;
66     const static int ADD_VIEW                      = 12;
67     const static int REDRAW_LANG                   = 14;
68     const static int EPG                           = 16;
69     const static int CHANGED_OPTIONS               = 18;
70     const static int CONNECTION_LOST               = 19;
71     const static int MOVE_RECORDING                = 20;
72     const static int PLAYER_EVENT                  = 22;
73     const static int AUDIO_CHANGE_CHANNEL          = 23;
74     const static int CHILD_CLOSE                   = 24;
75     const static int MOUSE_MOVE                    = 25;
76     const static int MOUSE_LBDOWN                  = 26;
77     const static int CHANGE_LANGUAGE               = 27;
78     const static int LAST_VIEW_CLOSE               = 28;
79     const static int CHANGED_REMOTECONTROL         = 29;
80     const static int DELETE_SELECTED_TIMER         = 30;
81     const static int CHANGED_DEVICEOPTIONS         = 31;
82     const static int TELETEXTUPDATE                = 32;
83     const static int TELETEXTUPDATEFIRSTLINE       = 33;
84     const static int SUBTITLE_CHANGE_CHANNEL       = 34;
85     const static int MOUSE_SCROLL                  = 35;
86     const static int NEW_PICTURE                   = 36;
87     const static int NEW_PICTURE_STATIC            = 37;
88     const static int REDRAW                        = 38;
89     const static int SHUTDOWN                      = 39;
90
91 };
92
93 #endif