home *** CD-ROM | disk | FTP | other *** search
- (* ----------------------------------------------------- *)
- (* PLDEMO.PAS *)
- (* Demonstriert die verschiedenen PickList-Typen *)
- (* (c) 1991 by R.Reichert & toolbox *)
- (* ----------------------------------------------------- *)
- PROGRAM PickListTest1;
-
- USES Stuff, MouKey, WinVSM, DBxItems;
-
- VAR
- VSM : WExtVSMPtr;
- Ev : EventObj;
- i,
- Answer: BYTE;
- Quit : BOOLEAN;
- List : PickListPtr;
-
- BEGIN
- VSM := New (WextVSMPtr,
- Init (New (ScreenObjPtr, Init (0, 0))));
- List := New (ExtPickListPtr,
- Init (10, 10, 30, 20,
- ' #PickList ', AltP,
- VSM));
- { ^^^ hier können die verschiedenen Typen
- zum Testen eingesetzt werden }
-
- IF List=NIL THEN BEGIN
- WriteLn ('*** Fehler: Objekt(e) nicht initialisiert.');
- Writeln;
- Writeln (' Programm abgebrochen.');
- Halt (1);
- END;
- VSM^.ClrScr;
- FOR i := 1 TO 30 DO
- IF i MOD 5=0 THEN
- List^.Add (New (StringPtr,
- Init (' Element '+IntToStr (i, 5)+
- ' ********* ')))
- ELSE
- List^.Add (New (StringPtr,
- Init (' Element '+IntToStr (i, 5))));
- List^.Display;
- Mouse^.Show;
- EvHand^.SetTakeOut (TRUE);
- Answer := ItOk;
- Quit := FALSE;
- REPEAT
- EvHand^.WaitForEvent (EvAll, Ev);
- IF (Ev.EventType=EvKeyState) AND
- (Ev.StateKey=Alt) THEN
- List^.DisplayHotKey
- ELSE
- List^.CheckEvent (Ev);
- Answer := List^.GetReturnCode;
- Quit := (Answer=ItSelected) OR
- (Answer=ItFinish);
- UNTIL Quit;
- Evhand^.SetTakeOut (FALSE);
- VSM^.GotoXY (1, 1);
- ReadLn;
- IF Answer<>ItFinish THEN BEGIN
- Writeln ('Gewählt wurde: ');
- Writeln ('>>> ', List^.GetResult, ' <<<');
- END ELSE
- Writeln ('Keine Wahl, da abgebrochen wurde.');
- ReadLn;
- Dispose (List, Done);
- Dispose (VSM, Done);
- END.
- (* ----------------------------------------------------- *)
- (* Ende von PLDEMO.PAS *)
- (* ----------------------------------------------------- *)