Blame


1 76193d7c 2003-09-30 devnull /*
2 76193d7c 2003-09-30 devnull * Structure pointed to by X field of Memimage
3 76193d7c 2003-09-30 devnull */
4 76193d7c 2003-09-30 devnull
5 76193d7c 2003-09-30 devnull typedef struct Xmem Xmem;
6 76193d7c 2003-09-30 devnull typedef struct Xprivate Xprivate;
7 76193d7c 2003-09-30 devnull
8 76193d7c 2003-09-30 devnull enum
9 76193d7c 2003-09-30 devnull {
10 76193d7c 2003-09-30 devnull PMundef = ~0
11 76193d7c 2003-09-30 devnull };
12 76193d7c 2003-09-30 devnull
13 76193d7c 2003-09-30 devnull struct Xmem
14 76193d7c 2003-09-30 devnull {
15 76193d7c 2003-09-30 devnull int pixmap; /* pixmap id */
16 76193d7c 2003-09-30 devnull XImage *xi; /* local image */
17 76193d7c 2003-09-30 devnull int dirty; /* is the X server ahead of us? */
18 76193d7c 2003-09-30 devnull Rectangle dirtyr; /* which pixels? */
19 76193d7c 2003-09-30 devnull Rectangle r; /* size of image */
20 76193d7c 2003-09-30 devnull };
21 76193d7c 2003-09-30 devnull
22 76193d7c 2003-09-30 devnull struct Xprivate {
23 76193d7c 2003-09-30 devnull u32int black;
24 76193d7c 2003-09-30 devnull u32int chan;
25 76193d7c 2003-09-30 devnull XColormap cmap;
26 76193d7c 2003-09-30 devnull XCursor cursor;
27 76193d7c 2003-09-30 devnull XDisplay *display;
28 76193d7c 2003-09-30 devnull int depth; /* of screen */
29 76193d7c 2003-09-30 devnull XDrawable drawable;
30 76193d7c 2003-09-30 devnull XColor map[256];
31 76193d7c 2003-09-30 devnull XColor map7[128];
32 76193d7c 2003-09-30 devnull uchar map7to8[128][2];
33 76193d7c 2003-09-30 devnull XGC gccopy;
34 76193d7c 2003-09-30 devnull XGC gccopy0;
35 76193d7c 2003-09-30 devnull XGC gcfill;
36 76193d7c 2003-09-30 devnull u32int gcfillcolor;
37 76193d7c 2003-09-30 devnull XGC gcfill0;
38 76193d7c 2003-09-30 devnull u32int gcfill0color;
39 76193d7c 2003-09-30 devnull XGC gcreplsrc;
40 76193d7c 2003-09-30 devnull u32int gcreplsrctile;
41 76193d7c 2003-09-30 devnull XGC gcreplsrc0;
42 76193d7c 2003-09-30 devnull u32int gcreplsrc0tile;
43 76193d7c 2003-09-30 devnull XGC gcsimplesrc;
44 76193d7c 2003-09-30 devnull u32int gcsimplesrccolor;
45 76193d7c 2003-09-30 devnull u32int gcsimplesrcpixmap;
46 76193d7c 2003-09-30 devnull XGC gcsimplesrc0;
47 76193d7c 2003-09-30 devnull u32int gcsimplesrc0color;
48 76193d7c 2003-09-30 devnull u32int gcsimplesrc0pixmap;
49 76193d7c 2003-09-30 devnull XGC gczero;
50 76193d7c 2003-09-30 devnull u32int gczeropixmap;
51 76193d7c 2003-09-30 devnull XGC gczero0;
52 76193d7c 2003-09-30 devnull u32int gczero0pixmap;
53 76193d7c 2003-09-30 devnull XDisplay *kbdcon;
54 76193d7c 2003-09-30 devnull XDisplay *mousecon;
55 76193d7c 2003-09-30 devnull Memimage* screenimage;
56 76193d7c 2003-09-30 devnull XDrawable screenpm;
57 76193d7c 2003-09-30 devnull Rectangle screenr;
58 76193d7c 2003-09-30 devnull XDisplay *snarfcon;
59 76193d7c 2003-09-30 devnull int toplan9[256];
60 76193d7c 2003-09-30 devnull int tox11[256];
61 76193d7c 2003-09-30 devnull int usetable;
62 76193d7c 2003-09-30 devnull XVisual *vis;
63 76193d7c 2003-09-30 devnull u32int white;
64 76193d7c 2003-09-30 devnull };
65 76193d7c 2003-09-30 devnull
66 76193d7c 2003-09-30 devnull extern Xprivate _x;
67 76193d7c 2003-09-30 devnull
68 76193d7c 2003-09-30 devnull extern Memimage *xallocmemimage(Rectangle, u32int, int);
69 76193d7c 2003-09-30 devnull extern XImage *xallocxdata(Memimage*, Rectangle);
70 76193d7c 2003-09-30 devnull extern void xdirtyxdata(Memimage*, Rectangle);
71 76193d7c 2003-09-30 devnull extern void xfillcolor(Memimage*, Rectangle, u32int);
72 76193d7c 2003-09-30 devnull extern void xfreexdata(Memimage*);
73 76193d7c 2003-09-30 devnull extern XImage *xgetxdata(Memimage*, Rectangle);
74 76193d7c 2003-09-30 devnull extern void xputxdata(Memimage*, Rectangle);
75 76193d7c 2003-09-30 devnull
76 76193d7c 2003-09-30 devnull struct Mouse;
77 76193d7c 2003-09-30 devnull extern int xtoplan9mouse(XEvent*, struct Mouse*);
78 76193d7c 2003-09-30 devnull extern int xtoplan9kbd(XEvent*);
79 76193d7c 2003-09-30 devnull extern void xexpose(XEvent*, XDisplay*);
80 76193d7c 2003-09-30 devnull extern int xconfigure(XEvent*, XDisplay*);
81 76193d7c 2003-09-30 devnull extern void flushmemscreen(Rectangle);
82 76193d7c 2003-09-30 devnull extern void xmoveto(Point);
83 76193d7c 2003-09-30 devnull struct Cursor;
84 76193d7c 2003-09-30 devnull extern void xsetcursor(struct Cursor*);
85 76193d7c 2003-09-30 devnull
86 76193d7c 2003-09-30 devnull #define MouseMask (\
87 76193d7c 2003-09-30 devnull ButtonPressMask|\
88 76193d7c 2003-09-30 devnull ButtonReleaseMask|\
89 76193d7c 2003-09-30 devnull PointerMotionMask|\
90 76193d7c 2003-09-30 devnull Button1MotionMask|\
91 76193d7c 2003-09-30 devnull Button2MotionMask|\
92 76193d7c 2003-09-30 devnull Button3MotionMask)
93 76193d7c 2003-09-30 devnull