{ Programm:  AppMenu
  ~~~~~~~~
  Sprache:   MaxonPASCAL 3 / KickPascal 2.12 / OS 2.0-Includes

  Sinn:      Programm zeigt wie man ein einfaches AppMenuItem
  ~~~~~      programmiert und wie man mit selbigem arbeitet.

  Autor:     PackMAN
  ~~~~~~     c/o Falk Zühlsdorff
             Lindenberg 66
             D-98693 Ilmenau/Thüringen

  ©:         FREEWARE, Autor wird in .dok / Infofenster des nicht-
  ~~                   kommerziellen Progr. erwähnt.

  Kommentar: Version für MAXON                            
  ~~~~~~~~~~ ab OS2                                                    }

PROGRAM appitem;
USES EXEC;
{$INCL 'dos.lib','workbench/startup.h','wb.lib'}

VAR myPort    : p_MsgPort;
    MyAppItem : p_AppMenuItem;
    AppMsg    : p_AppMessage;
    back      : boolean;
    mytask    : p_Task;

BEGIN
 mytask:=NIL;
 mytask:=FindTask('Workbench');      { Ist die Workbench offen ???} 
 IF mytask=NIL THEN exit;            { NEIN: und tschüß }
 myPort:=NIL;
 MyAppItem:=NIL;
 workbenchbase:=OpenLibrary('workbench.library',37);
 IF workbenchbase=NIL THEN exit;
 myport:=CreateMsgPort;
 IF myPort=NIL THEN Exit;
 MyAppItem:=AddAppMenuItemA(0,0,'ItemTest',myport,NIL);
 IF MyappItem=NIL THEN exit;
 AppMsg:=wait_port(myport)
 AppMsg:=get_msg(myport);       
 Reply_Msg(AppMsg);

 back:=RemoveAppMenuItem(MyAppItem);

 DeleteMsgPort(myport);
END.


