Commit Diff


commit - 56b2179d995dff3750de2ddcebb255f52281afe6
commit + 9801d5e566203cb283488deefd6dff5382194c0e
blob - /dev/null
blob + e8a8c9b20e2929f9554239fb981110438b018d54 (mode 644)
--- /dev/null
+++ include/drawfcall.h
@@ -0,0 +1,124 @@
+/* Copyright (c) 2006 Russ Cox */
+
+/*
+
+tag[1] Rerror error[s]
+
+tag[1] Trdmouse
+tag[1] Rrdmouse x[4] y[4] button[4] msec[4] resized[1]
+
+tag[1] Tmoveto x[4] y[4]
+tag[1] Rmoveto
+
+tag[1] Tcursor cursor[]
+tag[1] Rcursor
+
+tag[1] Tbouncemouse x[4] y[4] button[4]
+tag[1] Rbouncemouse
+
+tag[1] Trdkbd
+tag[1] Rrdkbd rune[2]
+
+tag[1] Tlabel label[s]
+tag[1] Rlabel 
+
+tag[1] Tinit winsize[s] label[s] font[s]
+tag[1] Rinit
+
+tag[1] Trdsnarf 
+tag[1] Rrdsnarf snarf[s]
+
+tag[1] Twrsnarf snarf[s]
+tag[1] Rwrsnarf
+
+tag[1] Trddraw count[4]
+tag[1] Rrddraw count[4] data[count]
+
+tag[1] Twrdraw count[4] data[count]
+tag[1] Rwrdraw count[4]
+
+tag[1] Ttop
+tag[1] Rtop
+
+tag[1] Tresize rect[4*4]
+tag[1] Rresize 
+*/
+
+AUTOLIB(draw)
+
+#define PUT(p, x) \
+	(p)[0] = ((x) >> 24)&0xFF, \
+	(p)[1] = ((x) >> 16)&0xFF, \
+	(p)[2] = ((x) >> 8)&0xFF, \
+	(p)[3] = (x)&0xFF
+
+#define GET(p, x) \
+	((x) = (((p)[0] << 24) | ((p)[1] << 16) | ((p)[2] << 8) | ((p)[3])))
+
+#define PUT2(p, x) \
+	(p)[0] = ((x) >> 8)&0xFF, \
+	(p)[1] = (x)&0xFF
+
+#define GET2(p, x) \
+	((x) = (((p)[0] << 8) | ((p)[1])))
+
+enum {
+	Rerror = 1,
+	Trdmouse = 2,
+	Rrdmouse,
+	Tmoveto = 4,
+	Rmoveto,
+	Tcursor = 6,
+	Rcursor,
+	Tbouncemouse = 8,
+	Rbouncemouse,
+	Trdkbd = 10,
+	Rrdkbd,
+	Tlabel = 12,
+	Rlabel,
+	Tinit = 14,
+	Rinit,
+	Trdsnarf = 16,
+	Rrdsnarf,
+	Twrsnarf = 18,
+	Rwrsnarf,
+	Trddraw = 20,
+	Rrddraw,
+	Twrdraw = 22,
+	Rwrdraw,
+	Ttop = 24,
+	Rtop,
+	Tresize = 26,
+	Rresize,
+	Tmax,
+};
+
+enum {
+	MAXWMSG = 4*1024*1024
+};
+
+typedef struct Wsysmsg Wsysmsg;
+struct Wsysmsg
+{
+	uchar type;
+	uchar tag;
+	Mouse mouse;
+	int resized;
+	Cursor cursor;
+	int arrowcursor;
+	Rune rune;
+	char *winsize;
+	char *label;
+	char *snarf;
+	char *error;
+	uchar *data;
+	uint count;
+	Rectangle rect;
+};
+
+uint	convW2M(Wsysmsg*, uchar*, uint);
+uint	convM2W(uchar*, uint, Wsysmsg*);
+uint	sizeW2M(Wsysmsg*);
+int	readwsysmsg(int, uchar*, uint);
+
+int	drawfcallfmt(Fmt*);