home *** CD-ROM | disk | FTP | other *** search
- #ifndef NODE_H
- #define NODE_H
- //************************************
- //
- // Name : Node.h
- //
- //************************************
-
-
- //**** Header files
-
- #ifndef EXEC_LISTS_H
- #include <exec/lists.h>
- #endif
-
-
- //**** Structures
-
- struct ProgNode {
- struct Node pn_Node;
- struct AppMenuItem *pn_appmenu;
- STRPTR pn_Filename;
- STRPTR pn_Directory;
- ULONG pn_LaunchCode;
- ULONG pn_Stack;
- LONG pn_Priority;
- };
-
-
- //**** LaunchCodes
-
- #define LC_ENV_MASK 0xF0
- #define LC_ARG_MASK 0x0F
-
- #define LC_WB 0x10
- #define LC_CLI 0x20
- #define LC_REXX 0x30
- #define LC_BATCH 0x40
-
- #define LC_NONE 0x00
- #define LC_EACH 0x01
- #define LC_ALL 0x02
-
- #define LC_WB_NONE ( LC_WB | LC_NONE )
- #define LC_WB_EACH ( LC_WB | LC_EACH )
- #define LC_WB_ALL ( LC_WB | LC_ALL )
- #define LC_CLI_NONE ( LC_CLI | LC_NONE )
- #define LC_CLI_EACH ( LC_CLI | LC_EACH )
- #define LC_CLI_ALL ( LC_CLI | LC_ALL )
- #define LC_REXX_NONE ( LC_REXX | LC_NONE )
- #define LC_REXX_EACH ( LC_REXX | LC_EACH )
- #define LC_REXX_ALL ( LC_REXX | LC_ALL )
- #define LC_BATCH_NONE ( LC_BATCH | LC_NONE )
- #define LC_BATCH_EACH ( LC_BATCH | LC_EACH )
- #define LC_BATCH_ALL ( LC_BATCH | LC_ALL )
-
-
- //**** Local Data structures
-
- extern struct List *List;
-
-
- //**** Function protoyupes
-
- int InitList(void);
- int FreeList(int all);
- long ListLength(void);
-
- struct ProgNode *NewNode(void);
- int DisposeNode(struct ProgNode *pn);
-
- struct Node *FindNthNode(long n);
-
-
- //****
-
- void pnSetItem(struct ProgNode *pn, char *item);
- void pnSetFilename(struct ProgNode *pn, char *filename);
- void pnSetDirectory(struct ProgNode *pn, char *directory);
-
-
- //**** End of file
- #endif
-