blob: 3dcc0bbdd89e0d1afe2ce79ca4bd63ce07c296c2 (
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
|
#ifndef __DRUMGIZMO_NATIVEWINDOW_X11_H__
#define __DRUMGIZMO_NATIVEWINDOW_X11_H__
#endif
#ifdef X11
#include <X11/Xlib.h>
#include "nativewindow.h"
namespace GUI {
class Window;
class NativeWindowX11 : public NativeWindow {
public:
NativeWindowX11(GUI::Window *window);
~NativeWindowX11();
void setFixedSize(int width, int height);
void resize(int width, int height);
void move(int x, int y);
void show();
void setCaption(const std::string &caption);
void hide();
void handleBuffer();
void redraw();
void grabMouse(bool grab);
bool hasEvent();
Event *getNextEvent();
private:
::Window xwindow;
GC gc;
XImage *buffer;
GUI::Window *window;
int last_click;
Display *display;
Atom wmDeleteMessage;
};
};
#endif
|