home *** CD-ROM | disk | FTP | other *** search
- /*****************************************************************************/
- /* DropMenu - Drop Down Menu Commodity */
- /* */
- /* Public Domain - Written 1992 by Paul Wilkinson */
- /* See DropMenu.doc for more information */
- /* */
- /* Contact the author at: */
- /* 24 Armstrong Ave */
- /* Mt. Warrigal NSW */
- /* 2528 */
- /* Australia */
- /* */
- /*****************************************************************************/
-
-
- #asm
- dc.b '$VER: DropMenu 1.1 (9.10.92)'
- #endasm
-
- #include <exec/types.h>
- #include <intuition/intuition.h>
- #include <libraries/commodities.h>
- #include <dos/dos.h>
- #include <dos/dosextens.h>
- #include <dos/dostags.h>
- #include <functions.h>
- #include <fcntl.h>
-
-
- long Initialise(int argc,char *argv[]);
- void CloseAll();
- void Process();
- VOID CXEventHandler(CxMsg *CxMessage,CxObj *CxObject);
- void ShutdownCx();
- BYTE SetupCx(UBYTE **,LONG *);
- long HandleCxMsg(CxMsg *);
-
- struct IntuitionBase *IntuitionBase=NULL;
- struct GadToolsBase *GadToolsBase=NULL;
- struct IconBase *IconBase=NULL;
- struct CxBase *CxBase=NULL;
- struct AslBase *AslBase=NULL;
- struct BattClockBase *BattClockBase;
- struct BattMemBase *BattMemBase;
- struct ConsoleDevice *ConsoleDevice;
- struct DiskfontBase *DiskfontBase;
- struct ExpansionBase *ExpansionBase;
- struct GfxBase *GfxBase;
- struct IFFParseBase *IFFParseBase;
- struct InputBase *InputBase;
- struct KeymapBase *KeymapBase;
- struct LayersBase *LayersBase;
- struct MathIeeeSingBasBase *MathIeeeSingBasBase;
- struct MathIeeeSingTransBase *MathIeeeSingTransBase;
- struct MiscBase *MiscBase;
- struct PotgoBase *PotgoBase;
- struct RamdriveDevice *RamdriveDevice;
- struct TimerBase *TimerBase;
- struct TranslatorBase *TranslatorBase;
- struct UtilityBase *UtilityBase;
- struct WorkbenchBase *WorkbenchBase;
- ULONG stdin;
- ULONG stdout;
-
- /* Commodities interface data. */
-
- struct MsgPort *CxPort;
- CxObj *Broker;
- int Active = TRUE;
-
-
- /* A new broker definition, Commodities needs this. */
-
- struct NewBroker NewBroker =
- {
- NB_VERSION,
- "DropMenu",
- "DropMenu 1.0",
- "Menu manipulation commodity",
- NBU_NOTIFY | NBU_UNIQUE,
- 0,0,NULL,0
- };
-
-
- struct EasyStruct TerminalRQ = {
- sizeof (struct EasyStruct),
- 0,
- "IFFBeep Version 3.",
- "Error!\n%s\n",
- "Exit"
- };
-
-
- char *errortxt[] = {
- "",
- "",
- "No Commodities.library",
- "No Icon.library",
- "Could not set up commodity"
- };
-
-
-
- UBYTE swallowed=0; /* Should we swallow a mouse up? */
- WORD xpos,ypos; /* Save xpos & ypos of mouse down */
-
-
-
-
-
-