
#define SNAPPORT "Snap.port"

#define CLIP_FIRST 0
#define CLIP_CONT  1
#define CLIP_LAST  2

#define TitleFont(win) ((struct TextFont *)(win->IFont ? win->IFont : win->RPort->Font))

#define Swap2L(_x,_y) { REGISTER LONG _t = _x; _x = _y; _y = _t; }

#define noaction 0
#define snapgfx  1  /* window */
#define snaptext 2  /* text */
#define insert   4  /* inserting */

#define waiting   0
#define selregion 1
#define waitext   2
#define selgfx    3
#define waitgfx   4

#define UNIT_FRAME 1 /* rect of chars */
#define UNIT_CHAR  2 /* characters with line wrap */
#define UNIT_WORD  3 /* words with line wrap */
#define UNIT_LINE  4 /* lines */

IMPORT VOID SaveClip();
IMPORT UBYTE *FetchClip();
IMPORT VOID SafePatch();
IMPORT VOID SafeRestore();
IMPORT VOID myhandler();
struct Screen *WhichScreen();
struct Window *WhichWindow();
struct Window *opensharedwindow();
VOID closesharedwindow();
UBYTE interpret();
VOID CopyFont();
VOID draw_frame();
VOID erase_frame();
VOID crawl_frame();
