#ifndef __COMMON_H__
#define __COMMON_H__

#ifndef _SYSTEM_HEADERS_H
#include "system_headers.h"
#endif  /* _SYSTEM_HEADERS_H */

#include "protos.h"
#include "arexx.h"
#include "version.h"

#define AUTHOR "Deryk B. Robosson <newlook@linux.tc3net.com>"
#define CX_POPKEY    "control alt i"
#define CX_PRIORITY  0

enum
{
   OID_MAIN = 0,
   OID_HEADER,
   OID_LAST
};

enum
{
   WID_MAIN = 0,
   WID_HEADER,
   WID_LAST
};

enum
{
   GID_MAIN = 0,
   GID_FUEL,

   GID_HMAIN,
   GID_LB,

   GID_LAST
};

/* our global data */
struct PopData
{
   Object            *pd_Objects[OID_LAST];
   struct Gadget     *pd_Gadgets[GID_LAST];
   struct Window     *pd_Windows[WID_LAST];
   struct MsgPort    *pd_SharedPort;
   ULONG             pd_SharedSigBit;
   struct List       pd_List;
   struct Screen     *pd_Screen;
   struct DrawInfo   *pd_DrawInfo;
   APTR              *pd_VisualInfo;

   BOOL              pd_InitFuel;
   BOOL              pd_FirstUpdate;
   ULONG             pd_TotalMsg;
   ULONG             pd_TotalSize;
   ULONG             pd_TotalCurrent;

   ULONG             pd_HWindowSigBit;

   struct MsgPort    *pd_cxPort;
   CxObj             *pd_cxBroker;
   ULONG             pd_cxSigBit;
   ULONG             pd_cxPriority;
   BOOL              pd_cxPopUp;
   UBYTE             pd_cxPopKey[32];

   struct MsgPort    *pd_TimePort;
   struct timerequest *pd_TimeRequest;
   struct MsgPort    *pd_AppPort;
   struct AppIcon    *pd_AppIcon;

   Object            *pd_ARexx;
   UBYTE             pd_ARexxPort[32];
   ULONG             pd_rexxSigBit;

   UBYTE             pd_Server[128];
   ULONG             pd_Port;
   UBYTE             pd_Username[256];
   UBYTE             pd_Password[256];
   ULONG             pd_Check;
   BOOL              pd_Quiet;
   BOOL              pd_UseSpool;
   UBYTE             pd_SpoolFile[368];
};

#endif /* __COMMON_H__ */
