/*
 *  FM_Reaction_Basics.h
 *
 *  $VER: V2.2, 5.2.2002
 *  Coded by Edgar Schwan
 *
 *  New in V2.0: New arguments in OpenReactionWindow()
 */

#ifndef FM_REACTION_BASICS_H
#define FM_REACTION_BASICS_H

#include <intuition/classusr.h>
#include <libraries/resource.h>

/* Prototypes */
BOOL InitReaction(char *ScrPubName);
void FreeReaction(void);
struct ReactWinData *OpenReactionWindow(RESOURCEID WinResID, RESOURCEID GadResID, char *ScrPubName);
void CloseReactionWindow(struct ReactWinData *rwd);
STRPTR GetDefStr(LONG id);
ULONG DisplayError(struct Window *win, LONG id, ULONG ErrorLevel);
void CloseDownDisplay(struct Screen *screen);
void LocalizeMenu(struct NewMenu *nm);

/* Structures */
struct ReactWinData {
	Object 			  *RWD_WindowObject;
	struct Gadget   **RWD_GadgetArray;
	struct Window	  *RWD_IWindow;
	ULONG					RWD_WSignals;
	};

/* Defines */
#define RESULT_NOTHING 0
#define RESULT_OK 1
#define RESULT_CANCEL -1
#define RESULT_ERROR -2

#define LAST_CAT_ENTRY TXT_SelectRxScript

#define CATSTR(id)        GetCatalogStr(CatalogPtr, id, GetDefStr(id))
#define CATSTRSTR(id,str) GetCatalogStr(CatalogPtr, id, (STRPTR) str)

#endif /* FM_REACTION_BASICS_H */
