home *** CD-ROM | disk | FTP | other *** search
- { MaxonPASCAL3-Anpassung / Test: Falk Zühlsdorff (PackMAN) 1994 }
-
- PROGRAM IntMsgDemo3; { dritte Version }
-
- USES INTUITION;
-
- Const
- Rahmenbreite=2;
- Balkenhoehe=12;
-
- VAR
- Win: ^Window;
- Msg: ^IntuiMessage;
- Ende: Boolean;
- Signale: Long;
-
- PROCEDURE Star(x, y, farb: integer);
- VAR IText: IntuiText;
- BEGIN
- IText:=IntuiText(farb, 0, 0, -4, -4, Nil, '*', Nil);
- PrintIText(Win^.RPort, ^Itext, x-Rahmenbreite, y-Balkenhoehe)
- End;
-
- BEGIN
- Win:=Open_Window(20,10, 200,80, 1, _CLOSEWINDOW or MOUSEBUTTONS,
- ACTIVATE or WINDOWCLOSE or WINDOWDEPTH
- or WINDOWDRAG or RMBTRAP or GIMMEZEROZERO,
- 'Klick mich!', Nil, 100, 20, 640, 256);
- Ende:= false;
- REPEAT
-
- { auf Nachricht warten: }
- REPEAT
- Msg:= Get_Msg(Win^.UserPort);
- If Msg=Nil Then
- Signale:=Wait(-1)
- UNTIL Msg<>Nil;
-
- Case Msg^.Class Of
- _CLOSEWINDOW: Ende:=true;
- MOUSEBUTTONS: If (Msg^.Code and $80)=0 Then
- BEGIN
- If (Msg^.Code and $01)=0 Then
- Star(Msg^.MouseX, Msg^.MouseY,3) { links }
- Else
- Star(Msg^.MouseX, Msg^.MouseY,1) { rechts }
- End
- Otherwise
- { unbekannte Message empfangen }
- End;
-
- Reply_Msg(Msg);{ Nachricht als ausgewertet kennzeichnen / beantworten}
-
- UNTIL Ende;
- Close_Window(Win);
- CloseLib(IntuitionBase);
- End.
-