#ifndef GLOBAL_H
#define GLOBAL_H 1
#include "childpack.h"
#include "menupack.h"
#include "end.h"
#include "xstuff.h" 
#include "rule.h"
#include "registry.h"
#include "biregistry.h"
#include "ruleset.h"

#include "darray.h"
#include "verbs.h"
#include "verb.h"
#include "rule.h"
#include "rl.h"
#include "ru.h"
#include "ed.h"

/*----------------------------- Xstuff Globals */
Pixel      ForePix_GR=(-1), BackPix_GR=(-1);
Widget     TestWidget_GR=NULL;
Screen *   Screen_GR=NULL;

/*----------------------------- Display 1 (d1) Globals */
Widget IfW_GR=NULL;
Widget If2_1W_GR=NULL;
Widget If2_2W_GR=NULL;
Widget If2_3W_GR=NULL;
Widget If2_4W_GR=NULL;
Widget ThenW_GR=NULL;
Widget Then2W_GR=NULL;
Widget Then_1W_GR=NULL;
Widget Then_2W_GR=NULL;
Widget Then_3W_GR=NULL;
Widget Then_4W_GR=NULL;
Darray If_Contents_GR=NULL;
Darray Then_Contents_GR=NULL;
Widget ShellW_GR=NULL;
Widget DoingW_GR;
Bool   Instantiated_GR=Bool_FALSE;

/*---------------------------- Rule (ru) globals */
Darray 		VerbNames_GR=NULL;
Darray 		Verbs_GR=NULL;
unsigned  	RuleNumber_GR=(-1);
unsigned  	EditOrCreate_GR=RU_EDIT;
AlRule 		Rule_GR=NULL;
REMember 	TopLevelMember_GR=NULL;
Darray 		Actions_GR=NULL;

/*---------------------------- Rule Set (rs) globals */
char *		RuleSetName_GR=NULL;
AlRuleSet 	RuleSet_GR=NULL;
Darray		Rules_GR=NULL;
char *          AsClient_GR=NULL;

/*---------------------------- Message Type (mt) globals */
Bool		LoadMsgType_GR=Bool_FALSE;
Darray   	MsgTypeNames_GR=NULL;
char *		CurrentMsgTypeName_GR=NULL;

/*---------------------------- Field Types (ft) globals */
Darray 		FieldTypeNames_GR=NULL;
AlFieldType 	DefaultFT_GR=NULL;
Darray 		DefaultFieldOpNames_GR=NULL;
char *		DefaultFieldOp_GR=NULL;

/*---------------------------- Editing (ed) globals */
REField        	UserField_GR;
Darray          WidgetKillList_GR;

/*---------------------------- Rule Language (rl) globals */
Darray  	RegFTs_GR;  /* names of regular field types */
Darray 		StateFTs_GR;  /* names of state field types */
Darray 		StateFC_def_FTs_GR;  /* Field type names for each state */
Biregistry 	NameToFC_GR;
Darray          FieldTypePresOrder_GR=NULL; 
Darray          VerbPresOrder_GR=NULL; 
XtTranslations  PredValueTranslations_GR=NULL;

Origin          Origin_GR;
#endif
