home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 28
/
amigaformatcd28.iso
/
+system+
/
tools
/
workbench
/
toolalias
/
source
/
icon.c
< prev
next >
Wrap
C/C++ Source or Header
|
1997-02-27
|
1KB
|
69 lines
/*
* Routines dealing with processing of program's icon
* (be they for tooltypes or AppIcon purposes).
*
* MWS, Tuesday 13-Oct-92
*/
#include <exec/types.h>
#include <dos/dos.h>
#include <workbench/startup.h>
#include <workbench/workbench.h>
#include <proto/exec.h>
#include <proto/dos.h>
#include <proto/wb.h>
#include <proto/icon.h>
#include <string.h>
#include "icon.h"
static struct DiskObject *mydiskobj;
BOOL
GetOurIcon(struct WBStartup *WBenchMsg)
{
if (WBenchMsg)
mydiskobj = GetDiskObject(WBenchMsg->sm_ArgList->wa_Name);
return mydiskobj ? TRUE : FALSE;
}
/* safe to call when open failed, and multiple times */
void
FreeOurIcon()
{
if (mydiskobj) FreeDiskObject(mydiskobj);
mydiskobj = NULL;
}
/* like ArgString() */
char *
TTString(char *name, char *def)
{
char *what;
if (mydiskobj)
if (what = FindToolType(mydiskobj->do_ToolTypes, name))
return what;
return def;
}
/* like ArgInt() */
LONG
TTInt(char *name, LONG def)
{
char *what;
if (mydiskobj)
if (what = FindToolType(mydiskobj->do_ToolTypes, name))
StrToLong(what, &def);
return def;
}
/* simple extension to ArgXXX routines */
BOOL
TTBool(char *name, BOOL def)
{
char *s;
s = TTString(name, def ? "YES" : "NO");
return ((strcmp(s, "YES") == 0) ||
(strcmp(s, "TRUE") == 0)) ? TRUE : FALSE;
}