<> <> <> <> DIRECTORY HourGlass USING [InitializeHourglass, TickHourglass], InputFocus USING [inputEnabled, InputFocusImpl], Process USING [Detach, Pause, MsecToTicks, Ticks], <> WindowManager USING [RestoreCursor]; Begin: CEDAR PROGRAM IMPORTS HourGlass, InputFocus, Process, --Runtime,-- WindowManager SHARES InputFocus = BEGIN WaitingCursor: PROC = BEGIN OPEN HourGlass; aWhile: Process.Ticks = Process.MsecToTicks[100]; InitializeHourglass[56]; UNTIL InputFocus.inputEnabled DO TickHourglass[]; Process.Pause[aWhile]; ENDLOOP; WindowManager.RestoreCursor[]; <> END; START InputFocus.InputFocusImpl; TRUSTED {Process.Detach[FORK WaitingCursor]}; -- cursor for amusement during start-up END.