
/*
\\    KMaus.c - CLI-Kommando per Mausklick. Aufrufbeispiel: RUN KMaus INFO
*/
#include "TOOL.h"

VOID error(meldung)
    STRPTR meldung;
{
    if(meldung) printf("%s\n",meldung);
    CloseLib();
    exit(0);
}

VOID main(argc,argv)
    SHORT argc;
    STRPTR argv[];
{
    struct Window *win;
    ULONG class;
    USHORT code=0;

    if(argc!=2)   error("Kein CLI-Kommando?");
    if(OpenLib()) error("Kann Lib's nicht öffnen!");
    win=ACTIVE_WINDOW;                /* das gerade aktive CLI-Window */
    win->Flags|=RMBTRAP;       /* Klick auf rechte Maustaste abfangen */
    ModifyIDCMP(win,MOUSEBUTTONS);           /* IDCMP-Flags verändern */
    while(code!=MENUUP){               /* warten auf rechte Maustaste */
        Wait(1<<win->UserPort->mp_SigBit);      /* warten auf Message */
        class=GetMessage(win,&code,0,0);
        if((class==MOUSEBUTTONS)&&(code==SELECTUP)) Execute(argv[1],0,0);
    }
    win->Flags^=RMBTRAP;     /* Urzustand der Window-Flags herstellen */
    ModifyIDCMP(win,0);   /* IDCMP-Flags des CLI-Windows zurücksetzen */
    error(0);
}

