Blame


1 c66b5250 2006-06-25 devnull /*
2 c66b5250 2006-06-25 devnull * Structure pointed to by X field of Memimage
3 c66b5250 2006-06-25 devnull */
4 c66b5250 2006-06-25 devnull
5 c66b5250 2006-06-25 devnull typedef struct Xmem Xmem;
6 c66b5250 2006-06-25 devnull typedef struct Xprivate Xprivate;
7 c66b5250 2006-06-25 devnull
8 c66b5250 2006-06-25 devnull enum
9 c66b5250 2006-06-25 devnull {
10 c66b5250 2006-06-25 devnull PMundef = ~0
11 c66b5250 2006-06-25 devnull };
12 c66b5250 2006-06-25 devnull
13 c66b5250 2006-06-25 devnull struct Xmem
14 c66b5250 2006-06-25 devnull {
15 c66b5250 2006-06-25 devnull int pixmap; /* pixmap id */
16 c66b5250 2006-06-25 devnull XImage *xi; /* local image */
17 c66b5250 2006-06-25 devnull int dirty; /* is the X server ahead of us? */
18 c66b5250 2006-06-25 devnull Rectangle dirtyr; /* which pixels? */
19 c66b5250 2006-06-25 devnull Rectangle r; /* size of image */
20 c66b5250 2006-06-25 devnull };
21 c66b5250 2006-06-25 devnull
22 c66b5250 2006-06-25 devnull struct Xprivate {
23 c66b5250 2006-06-25 devnull u32int chan;
24 c66b5250 2006-06-25 devnull XColormap cmap;
25 c66b5250 2006-06-25 devnull XCursor cursor;
26 c66b5250 2006-06-25 devnull XDisplay *display;
27 c66b5250 2006-06-25 devnull int fd; /* of display */
28 c66b5250 2006-06-25 devnull int depth; /* of screen */
29 c66b5250 2006-06-25 devnull XDrawable drawable;
30 c66b5250 2006-06-25 devnull XColor map[256];
31 c66b5250 2006-06-25 devnull XColor map7[128];
32 c66b5250 2006-06-25 devnull uchar map7to8[128][2];
33 c66b5250 2006-06-25 devnull XGC gccopy;
34 c66b5250 2006-06-25 devnull XGC gccopy0;
35 c66b5250 2006-06-25 devnull XGC gcfill;
36 c66b5250 2006-06-25 devnull u32int gcfillcolor;
37 c66b5250 2006-06-25 devnull XGC gcfill0;
38 c66b5250 2006-06-25 devnull u32int gcfill0color;
39 c66b5250 2006-06-25 devnull XGC gcreplsrc;
40 c66b5250 2006-06-25 devnull u32int gcreplsrctile;
41 c66b5250 2006-06-25 devnull XGC gcreplsrc0;
42 c66b5250 2006-06-25 devnull u32int gcreplsrc0tile;
43 c66b5250 2006-06-25 devnull XGC gcsimplesrc;
44 c66b5250 2006-06-25 devnull u32int gcsimplesrccolor;
45 c66b5250 2006-06-25 devnull u32int gcsimplesrcpixmap;
46 c66b5250 2006-06-25 devnull XGC gcsimplesrc0;
47 c66b5250 2006-06-25 devnull u32int gcsimplesrc0color;
48 c66b5250 2006-06-25 devnull u32int gcsimplesrc0pixmap;
49 c66b5250 2006-06-25 devnull XGC gczero;
50 c66b5250 2006-06-25 devnull u32int gczeropixmap;
51 c66b5250 2006-06-25 devnull XGC gczero0;
52 c66b5250 2006-06-25 devnull u32int gczero0pixmap;
53 c66b5250 2006-06-25 devnull Rectangle newscreenr;
54 c66b5250 2006-06-25 devnull Memimage* screenimage;
55 c66b5250 2006-06-25 devnull QLock screenlock;
56 c66b5250 2006-06-25 devnull XDrawable screenpm;
57 c66b5250 2006-06-25 devnull XDrawable nextscreenpm;
58 c66b5250 2006-06-25 devnull Rectangle screenr;
59 c66b5250 2006-06-25 devnull int toplan9[256];
60 c66b5250 2006-06-25 devnull int tox11[256];
61 c66b5250 2006-06-25 devnull int usetable;
62 c66b5250 2006-06-25 devnull XVisual *vis;
63 c66b5250 2006-06-25 devnull Atom clipboard;
64 c66b5250 2006-06-25 devnull Atom utf8string;
65 c66b5250 2006-06-25 devnull Atom targets;
66 c66b5250 2006-06-25 devnull Atom text;
67 c66b5250 2006-06-25 devnull Atom compoundtext;
68 c66b5250 2006-06-25 devnull Atom takefocus;
69 c66b5250 2006-06-25 devnull Atom losefocus;
70 c66b5250 2006-06-25 devnull Atom wmprotos;
71 c66b5250 2006-06-25 devnull uint putsnarf;
72 c66b5250 2006-06-25 devnull uint assertsnarf;
73 c66b5250 2006-06-25 devnull int destroyed;
74 c66b5250 2006-06-25 devnull };
75 c66b5250 2006-06-25 devnull
76 c66b5250 2006-06-25 devnull extern Xprivate _x;
77 c66b5250 2006-06-25 devnull
78 c66b5250 2006-06-25 devnull extern Memimage *_xallocmemimage(Rectangle, u32int, int);
79 c66b5250 2006-06-25 devnull extern XImage *_xallocxdata(Memimage*, Rectangle);
80 c66b5250 2006-06-25 devnull extern void _xdirtyxdata(Memimage*, Rectangle);
81 c66b5250 2006-06-25 devnull extern void _xfillcolor(Memimage*, Rectangle, u32int);
82 c66b5250 2006-06-25 devnull extern void _xfreexdata(Memimage*);
83 c66b5250 2006-06-25 devnull extern XImage *_xgetxdata(Memimage*, Rectangle);
84 c66b5250 2006-06-25 devnull extern void _xputxdata(Memimage*, Rectangle);
85 c66b5250 2006-06-25 devnull
86 c66b5250 2006-06-25 devnull struct Mouse;
87 c66b5250 2006-06-25 devnull extern int _xtoplan9mouse(XEvent*, struct Mouse*);
88 c66b5250 2006-06-25 devnull extern int _xtoplan9kbd(XEvent*);
89 c66b5250 2006-06-25 devnull extern void _xexpose(XEvent*);
90 c66b5250 2006-06-25 devnull extern int _xselect(XEvent*);
91 c66b5250 2006-06-25 devnull extern int _xconfigure(XEvent*);
92 c66b5250 2006-06-25 devnull extern int _xdestroy(XEvent*);
93 c66b5250 2006-06-25 devnull extern void _flushmemscreen(Rectangle);
94 c66b5250 2006-06-25 devnull extern void _xmoveto(Point);
95 c66b5250 2006-06-25 devnull struct Cursor;
96 c66b5250 2006-06-25 devnull extern void _xsetcursor(struct Cursor*);
97 c66b5250 2006-06-25 devnull extern void _xbouncemouse(Mouse*);
98 c66b5250 2006-06-25 devnull extern int _xsetlabel(char*);
99 c66b5250 2006-06-25 devnull extern Memimage* _xattach(char*, char*);
100 c66b5250 2006-06-25 devnull extern char* _xgetsnarf(void);
101 c66b5250 2006-06-25 devnull extern void _xputsnarf(char *data);
102 c66b5250 2006-06-25 devnull extern void _xtopwindow(void);
103 c66b5250 2006-06-25 devnull extern void _xresizewindow(Rectangle);
104 c155dcfe 2008-01-30 rsc extern void _xmovewindow(Rectangle);
105 c66b5250 2006-06-25 devnull extern int _xreplacescreenimage(void);
106 c66b5250 2006-06-25 devnull
107 c66b5250 2006-06-25 devnull #define MouseMask (\
108 c66b5250 2006-06-25 devnull ButtonPressMask|\
109 c66b5250 2006-06-25 devnull ButtonReleaseMask|\
110 c66b5250 2006-06-25 devnull PointerMotionMask|\
111 c66b5250 2006-06-25 devnull Button1MotionMask|\
112 c66b5250 2006-06-25 devnull Button2MotionMask|\
113 c66b5250 2006-06-25 devnull Button3MotionMask)
114 c66b5250 2006-06-25 devnull
115 35288690 2008-01-30 rsc extern Rectangle screenrect;
116 35288690 2008-01-30 rsc extern Rectangle windowrect;
117 35288690 2008-01-30 rsc extern int fullscreen;