home *** CD-ROM | disk | FTP | other *** search
- /*----------------------------------------------------------------------*
- defs.h version 3.0 - © Copyright 1990-91 Jaba Development
-
- Author : Jan van den Baard
- Purpose: headerfile for making a pre-copiled symbol file (Aztec V5.0a)
- *----------------------------------------------------------------------*/
- #include <exec/types.h>
- #include <exec/memory.h>
- #include <intuition/intuition.h>
- #include <intuition/intuitionbase.h>
- #include <libraries/dos.h>
- #include <libraries/dosextens.h>
- #include <workbench/workbench.h>
- #include <workbench/startup.h>
- #include <workbench/icon.h>
- #include <functions.h>
- #include <tool.h> /* tool.library V8++ !!! */
-
- #define AND &&
- #define OR ||
-
- #define Alloc(c,s) AllocItem(c,(ULONG)s,MEMF_PUBLIC|MEMF_CLEAR)
-
- struct BitMapHeader {
- UWORD w,h;
- WORD x,y;
- UBYTE nPlanes;
- UBYTE masking;
- UBYTE compression;
- UBYTE pad1;
- UWORD transparentColor;
- UBYTE xAspect, yAspect;
- WORD pageWidth, pageHeight;
- };
-
- struct FORMChunk {
- ULONG fc_Type;
- ULONG fc_Length;
- ULONG fc_SubType;
- };
-
- struct IFFChunk {
- ULONG ic_Type;
- ULONG ic_Length;
- };
-
- #define bpr(w) (((w+15)>>4)<<1)
-
- #define RENDER 0
- #define SELECT 1
- #define STDPRP 2
-
- #define TXT_ADD 0
- #define TXT_MOVE 1
- #define TXT_MODIFY 2
- #define TXT_DELETE 3
-
- #define TITLE ((UBYTE *)"PowerSource V3.0")
-
- #define TYPE ((ULONG)'PWSR')
-
- struct ge_prefs {
- BOOL skip_zero_planes;
- BOOL auto_size;
- BOOL image_copy;
- BOOL text_copy;
- BOOL static_structures;
- BOOL no_flags;
- BOOL os2_hborder;
- UWORD flag_bits;
- };
-
- #define GP_COORDS 0x0001
-
- /*
- * FOR THE BINARY FILE STRUCTURE!!!
- */
- #define GE_VERSION 4
-
- struct BinHeader {
- ULONG FileType;
- USHORT Version;
- USHORT ScrDepth;
- USHORT Colors[32];
- USHORT FPen;
- USHORT BPen;
- USHORT BackFill;
- USHORT WDBackFill;
- USHORT LightSide;
- USHORT DarkSide;
- ULONG FlagsBits;
- ULONG SpareFlags;
- UWORD Spare[6];
- };
-
- #define BH_WORKBENCH 0x0001
- #define BH_REQUESTER 0x0002
-
- #define GADGETOFF 0x0001
- #define BORDERONLY 0x0002
- #define NOSIGNAL 0x0004
- #define IMAGEONLY 0x0008 /* not yet implemented! */
- #define NOBORDER 0x0010
- #define OS20BORDER 0x0020
- #define USERLABEL 0x0040
- #define OS20HIGHBORDER 0x0080
- #define SHAREDBORDER 0x0100
-
- /*
- * reserved bits ->
- * GZZGADGET 0x2000 in SpecialFlags!
- */
-
- #define MAXLABEL 32
-
- struct MyGadget {
- struct MyGadget *Succ;
- struct MyGadget *Pred;
- struct Gadget Gadget;
- USHORT SpecialFlags;
- UBYTE GadgetLabel[MAXLABEL];
- UWORD RenderAccount;
- UWORD SelectAccount;
- UWORD BorderAccount;
- UWORD HBorderAccount;
- };
-
- struct GadgetList {
- struct MyGadget *Head;
- struct MyGadget *Tail;
- struct MyGadget *TailPred;
- };
-
- struct SharedImage {
- struct SharedImage *Succ;
- struct SharedImage *Pred;
- struct Image *Image;
- UWORD UseCount;
- ULONG CheckSum;
- UWORD Colors[32];
- };
-
- struct SharedList {
- struct SharedImage *Head;
- struct SharedImage *Tail;
- struct SharedImage *TailPred;
- };
-
- struct MyMenu {
- /*** standard menu structure ***/
- struct MyMenu *NextMenu;
- WORD LeftEdge, TopEdge, Width, Height;
- UWORD Flags;
- BYTE *MenuName;
- struct MyMenuItem *FirstItem;
- WORD JazzX, JazzY, BeatX, BeatY;
-
- UWORD SpecialFlags; /* flags (see below) */
- BYTE TheMenuName[32]; /* the menu it's name */
- struct ListItem *ItsListItem;
- };
-
- #define USERFORMAT 0x0001 /* user specified format */
-
- struct MyMenuItem {
- /*** standard MenuItem structure ***/
- struct MyMenuItem *NextItem;
- WORD LeftEdge, TopEdge, Width, Height;
- UWORD Flags;
- LONG MutualExclude;
- APTR ItemFill;
- APTR SelectFill;
- BYTE Command;
- BYTE KludgeFill0;
- struct MyMenuItem *SubItem;
- UWORD NextSelect;
-
- UWORD SpecialFlags; /* flags (see above) */
- UWORD RenderAccount; /* image account */
- UWORD SelectAccount; /* selected image account */
- struct ListItem *ItsListItem;
- };
-
- struct ListItem {
- struct MenuItem AItem; /* just a stupid item */
- struct IntuiText Text; /* and its stupid text */
- UBYTE Letters[10]; /* and room for the stupid text */
- struct MyMenu *Menu; /* the menu */
- struct MyMenuItem *Item; /* the item (if (sub)itemlist) */
- struct MyMenuItem *SubItem; /* the subitem (if sublist) */
- };
-
- struct SharedBorder {
- struct SharedBorder *Succ;
- struct SharedBorder *Pred;
- struct Border *Border;
- UWORD UseCount;
- UWORD SpecialFlags;
- };
-
- #define SB_HIGHBORDER 0x0001
- #define SB_BORDERONLY 0x0002
-
- struct BorderList {
- struct SharedBorder *Head;
- struct SharedBorder *Tail;
- struct SharedBorder *TailPred;
- };
-
- #ifdef FileRequester
- #define FileSelector FileRequester
- #endif
-
- #define RETURN_MAIN_MENU 0
- #define RETURN_MENU_MENU 1
- #define RETURN_ITEM_MENU 2
-
- #define TEXT_WIDTH(r,t) (TextLength(r,(char *)t,strlen((char *)t)))
- #define TEXT_HEIGHT(r) (r->Font->tf_YSize)
-
- #define MENUED 0
- #define ITEMED 1
- #define SUBED 2
-
- #define MENUSPACING 16
- #define ITEMSPACING 1
- #define TEXTSPACING 4
-
- #define IDCMP_NM NEWSIZE|GADGETUP|GADGETDOWN|INACTIVEWINDOW|ACTIVEWINDOW|MENUPICK|RAWKEY|MOUSEBUTTONS|CLOSEWINDOW|MOUSEMOVE
- #define FLAGS_NM WINDOWSIZING|WINDOWDRAG|WINDOWCLOSE|WINDOWDEPTH|NOCAREREFRESH|SMART_REFRESH+ACTIVATE
- #define FLAGS_RQ WINDOWSIZING|WINDOWDRAG|NOCAREREFRESH|SMART_REFRESH|ACTIVATE|SIZEBRIGHT|SIZEBBOTTOM|GIMMEZEROZERO|BORDERLESS
-
- #define ESC 0x45
- #define F1 0x50
- #define F2 0x51
- #define F3 0x52
- #define F4 0x53
- #define F5 0x54
- #define F6 0x55
- #define F7 0x56
- #define F8 0x57
- #define F9 0x58
- #define F10 0x59
- #define HELP 0x5F
-