blob: 4cae9ce0142dd2274fb0d4a3a3b2505187eaef10 (
plain) (
blame)
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
|
#ifndef _FS_MONITOR_H
#define _FS_MONITOR_H
#include <bfc/ptrlist.h>
#include <api/timer/timerclient.h>
class FSCallback {
public:
virtual void onGoFullscreen()=0;
virtual void onCancelFullscreen()=0;
};
class FullScreenMonitor : public TimerClientDI {
public:
FullScreenMonitor();
virtual ~FullScreenMonitor();
void registerCallback(FSCallback *cb);
void unregisterCallback(FSCallback *cb);
int isFullScreen() { return m_fs; }
int wndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
void timerclient_timerCallback(int id);
private:
void onGoFullscreen();
void onCancelFullscreen();
void sendGoFSCallbacks();
void sendCancelFSCallbacks();
PtrList<FSCallback> m_callbacks;
HWND hWnd;
int m_fs;
int m_go_fs_timer_set;
int m_cancel_fs_timer_set;
};
#endif
|