/*** external declarations for settings ***/

#include <exec/types.h>
#include <libraries/commodities.h>

/***** the toggles *****/
typedef struct {
	BOOL	pos;		/* position of toggle (ie. off or on) */
	WORD	gadid;		/* index to CheckBox gadget array */
} TOGGLEDATA;

#define NUM_TOGGLES	11
extern TOGGLEDATA toggles[NUM_TOGGLES];

#define clicktofront	toggles[0].pos	/* window depth-change by mouse-clicks */
#define	clicktoback	toggles[1].pos	/* ditto */
#define	autopoint	toggles[2].pos	/* sunmouse */
#define	keyactivate	toggles[3].pos	/* key over window activates */
#define	screencycle	toggles[4].pos	/* clicktoback over backdrop or no window */
#define	autopop		toggles[5].pos	/* autopoptofront */
#define	rmbactivate	toggles[6].pos	/* RMB activates window */
/*#define mouseblank	toggles[8].pos	/* blank mouse when key pressed */
#define wildstar	toggles[9].pos	/* allow '*' as wildcard */
#define scractivate	toggles[10].pos	/* activate window when shuffling screens */

#define MB_NONE		0	/* mouse-blank method */
#define MB_SPRITES	1
#define MB_COPPER	2

#define WILDSTARON	((struct RootNode *)(DOSBase->dl_Root))->rn_Flags |= RNF_WILDSTAR
#define WILDSTAROFF	((struct RootNode *)(DOSBase->dl_Root))->rn_Flags &= ~RNF_WILDSTAR

/***** the patterns *****/
#define PATLEN 99
typedef struct {
    char patstr[PATLEN+1];
    char *pat;
} PATTERNDATA;

#define NUM_PATTERNS 4
extern PATTERNDATA patterns[NUM_PATTERNS];

/* indices of patterns */
#define YP_AUTOSCR_PAT	0
#define YP_CLICKSCR_PAT	1
#define YP_POPWIN_PAT	2
#define YP_CLICKWIN_PAT	3

/* shorthand */
#define autoscrpat	patterns[YP_AUTOSCR_PAT].pat
#define clickscrpat	patterns[YP_CLICKSCR_PAT].pat
#define popwinpat	patterns[YP_POPWIN_PAT].pat
#define clickwinpat	patterns[YP_CLICKWIN_PAT].pat

/***** other settings *****/
#ifdef OLD
extern LONG datefmt;
#endif
extern LONG click_volume;

extern LONG blanktimeout;
extern LONG blanksecs;
extern LONG blankcount;

extern LONG mouseblank;
extern LONG mblanktimeout;
extern LONG mblanksecs;
extern LONG mblankcount;

/* changed for 1.3 */
#define CONFIG_FILE "S:Yak.prefs"
/* added for 1.5 */
#define HOTKEY_FILE "S:Yak.hotkeys"

/*** defines from main.c ***/ 
extern struct Locale *locale;
extern CxObj *broker;
extern struct MsgPort *broker_mp;
extern ULONG wndsigflag;
extern char *PopKeyStr;

/*** defines from pri.c ***/ 
/* task priority types */
#define ORIGINAL	0
#define ACTIVE		1

/*** defines for handler.c ***/ 
/* for AutoActivateWindow - why? */
#define SCREEN	0
#define AUTO	1
#define KEY	2
#define RMBACT  3

/*** defines from help.c ***/
#define HELP_ERROR	0
#define HELP_OKAY	1
#define HELP_HIDE	2
#define HELP_QUIT	3

#include "localprotos.h"
