shithub: libacme

ref: 2f6fbc8ffe5f528721887b7e1c257b643f9b1ef1
dir: /acme.h/

View raw version
#pragma lib "libacme.a"

enum {
	Eventsz = 256 * UTFMax;
};

typedef struct Win Win;
struct Win {
	int id;
	int ctl;
	int event;
	int addr;
	int data;
};

Win * wincreate();
void winclose(Win *);
void wintitle(Win *, char *, ...);
void winctl(Win *, char *, ...);
void winclear(Win *);

typedef struct Event Event;
struct Event {
	char origin;	/* mouse, keyboard, etc. */
	char type;		/* delete, exec, etc. */
	int p;			/* click point */
	int q0, q1;		/* expanded text */
	int flags;
	int ntext;
	char text[Eventsz + 1];
};

void nextevent(Win *, Event *);
void sendevent(Win *, Event *);