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 50923426 2020-01-13 rsc typedef struct Xwin Xwin;
8 c66b5250 2006-06-25 devnull
9 c66b5250 2006-06-25 devnull enum
10 c66b5250 2006-06-25 devnull {
11 c66b5250 2006-06-25 devnull PMundef = ~0
12 c66b5250 2006-06-25 devnull };
13 c66b5250 2006-06-25 devnull
14 c66b5250 2006-06-25 devnull struct Xmem
15 c66b5250 2006-06-25 devnull {
16 c66b5250 2006-06-25 devnull int pixmap; /* pixmap id */
17 c66b5250 2006-06-25 devnull XImage *xi; /* local image */
18 c66b5250 2006-06-25 devnull int dirty; /* is the X server ahead of us? */
19 c66b5250 2006-06-25 devnull Rectangle dirtyr; /* which pixels? */
20 c66b5250 2006-06-25 devnull Rectangle r; /* size of image */
21 c66b5250 2006-06-25 devnull };
22 c66b5250 2006-06-25 devnull
23 c66b5250 2006-06-25 devnull struct Xprivate {
24 c66b5250 2006-06-25 devnull u32int chan;
25 c66b5250 2006-06-25 devnull XColormap cmap;
26 c66b5250 2006-06-25 devnull XCursor cursor;
27 c66b5250 2006-06-25 devnull XDisplay *display;
28 c66b5250 2006-06-25 devnull int fd; /* of display */
29 c66b5250 2006-06-25 devnull int depth; /* of screen */
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 int toplan9[256];
54 c66b5250 2006-06-25 devnull int tox11[256];
55 c66b5250 2006-06-25 devnull int usetable;
56 c66b5250 2006-06-25 devnull XVisual *vis;
57 c66b5250 2006-06-25 devnull Atom clipboard;
58 c66b5250 2006-06-25 devnull Atom utf8string;
59 c66b5250 2006-06-25 devnull Atom targets;
60 c66b5250 2006-06-25 devnull Atom text;
61 c66b5250 2006-06-25 devnull Atom compoundtext;
62 c66b5250 2006-06-25 devnull Atom takefocus;
63 c66b5250 2006-06-25 devnull Atom losefocus;
64 c66b5250 2006-06-25 devnull Atom wmprotos;
65 c66b5250 2006-06-25 devnull uint putsnarf;
66 c66b5250 2006-06-25 devnull uint assertsnarf;
67 50923426 2020-01-13 rsc int kbuttons;
68 50923426 2020-01-13 rsc int kstate;
69 50923426 2020-01-13 rsc int altdown;
70 50923426 2020-01-13 rsc
71 50923426 2020-01-13 rsc Xwin* windows;
72 50923426 2020-01-13 rsc };
73 50923426 2020-01-13 rsc
74 50923426 2020-01-13 rsc struct Client;
75 50923426 2020-01-13 rsc
76 50923426 2020-01-13 rsc struct Xwin
77 50923426 2020-01-13 rsc {
78 50923426 2020-01-13 rsc XDrawable drawable;
79 50923426 2020-01-13 rsc struct Client* client;
80 50923426 2020-01-13 rsc
81 50923426 2020-01-13 rsc Rectangle newscreenr;
82 50923426 2020-01-13 rsc Memimage* screenimage;
83 50923426 2020-01-13 rsc XDrawable screenpm;
84 50923426 2020-01-13 rsc XDrawable nextscreenpm;
85 50923426 2020-01-13 rsc Rectangle screenr;
86 50923426 2020-01-13 rsc Rectangle screenrect;
87 50923426 2020-01-13 rsc Rectangle windowrect;
88 50923426 2020-01-13 rsc int fullscreen;
89 c66b5250 2006-06-25 devnull int destroyed;
90 50923426 2020-01-13 rsc
91 50923426 2020-01-13 rsc Xwin* next;
92 c66b5250 2006-06-25 devnull };
93 c66b5250 2006-06-25 devnull
94 50923426 2020-01-13 rsc void xlock(void);
95 50923426 2020-01-13 rsc void xunlock(void);
96 c66b5250 2006-06-25 devnull extern Xprivate _x;
97 c66b5250 2006-06-25 devnull
98 c66b5250 2006-06-25 devnull extern Memimage *_xallocmemimage(Rectangle, u32int, int);
99 c66b5250 2006-06-25 devnull extern XImage *_xallocxdata(Memimage*, Rectangle);
100 c66b5250 2006-06-25 devnull extern void _xdirtyxdata(Memimage*, Rectangle);
101 c66b5250 2006-06-25 devnull extern void _xfillcolor(Memimage*, Rectangle, u32int);
102 c66b5250 2006-06-25 devnull extern void _xfreexdata(Memimage*);
103 c66b5250 2006-06-25 devnull extern XImage *_xgetxdata(Memimage*, Rectangle);
104 c66b5250 2006-06-25 devnull extern void _xputxdata(Memimage*, Rectangle);
105 c66b5250 2006-06-25 devnull