home *** CD-ROM | disk | FTP | other *** search
- /*
- ** SmartWIN
- **
- ** © 1996 by Timo C. Nentwig
- ** All Rights Reserved !
- **
- ** Tcn@oxygen.in-berlin.de
- **
- **
- */
-
- /// #include
-
- #include "GST.h"
- #include "Protos.h"
-
- ///
- /// proto
-
- proto VOID EvalArgs (VOID);
- proto VOID EvalTTypes (VOID);
- proto VOID InitSettings (VOID);
-
- ///
-
- /// InitSetting ()
-
- /*
- * FUNCTION Initialize settings structure.
- *
- * NOTE
- *
- * EXAMPLE InitSettings ();
- *
- */
-
- VOID
- InitSettings (VOID)
- {
-
- Set -> Cx . Priority = 0;
- Set -> WBOnly = FALSE;
-
- }
-
- ///
- /// EvalTTypes ()
-
- /*
- * FUNCTION Evaluate tooltypes.
- *
- * NOTE
- *
- * EXAMPLE EvalTTypes ("path:dir/icon);
- *
- */
-
-
- VOID
- EvalTTypes (VOID)
- {
-
- struct DiskObject *Icon;
-
- // Try to read the icon file
-
- if (Icon = GetDiskObject (PRG_TITLE))
- {
-
- #define Item(s) FindToolType (Icon -> do_ToolTypes, s)
-
- STRPTR String;
-
- if (String = Item ("CX_PRIORITY")) Set -> Cx . Priority = atol (String);
- if (String = Item ("WBONLY")) Set -> WBOnly = atob (String);
-
- FreeDiskObject (Icon);
-
- }
-
- }
-
- ///
- /// EvalArgs ()
-
- /*
- * FUNCTION Evaluate given shell arguments
- *
- * NOTE
- *
- * EXAMPLE EvalArgs ();
- *
- */
-
-
- VOID
- EvalArgs (VOID)
- {
-
- #define ARG_TEMPLATE "PRI=CX_PRIORITY/K/N,WB=WBONLY/S"
-
- enum
- {
-
- CX_PRIORITY, WBONLY,
-
- ARG_COUNT
-
- };
-
- STRPTR *ArgArray;
-
- if (ArgArray = (STRPTR *) AllocVec (sizeof (STRPTR) * (ARG_COUNT), MEMF_ANY | MEMF_CLEAR))
- {
-
- struct RDArgs *ArgsPtr;
-
- if (ArgsPtr = (struct RDArgs *) AllocDosObject (DOS_RDARGS, TAG_END))
- {
-
- ArgsPtr -> RDA_ExtHelp = "" PRG_TITLE " " PRG_VERSION "\n"
- "Copyright © " PRG_YEAR " by " PRG_AUTHOR "\n"
- "All Rights Reserved !\n\n"
- PRG_EMAIL "\n";
-
- if (ReadArgs (ARG_TEMPLATE, (LONG *) ArgArray, ArgsPtr))
- {
-
- if (ArgArray [CX_PRIORITY]) Set -> Cx . Priority = * (LONG *) ArgArray [CX_PRIORITY];
- if (ArgArray [WBONLY]) Set -> WBOnly = TRUE;
-
- FreeArgs (ArgsPtr);
-
- }
-
- FreeDosObject (DOS_RDARGS, ArgsPtr);
-
- }
-
- FreeVec (ArgArray);
-
- }
-
- }
-
- ///
-
-
-