mirror of
https://git.sr.ht/~rabbits/macintosh_cookbook
synced 2024-12-27 10:29:25 +00:00
45 lines
723 B
ObjectPascal
45 lines
723 B
ObjectPascal
program ExampleDraw;
|
|
|
|
var
|
|
cursor, prev: Point;
|
|
isDown: Boolean;
|
|
|
|
procedure WhenDownChanged;
|
|
begin
|
|
MoveTo(prev.h, prev.v);
|
|
LineTo(cursor.h, cursor.v);
|
|
GetMouse(prev);
|
|
end;
|
|
|
|
procedure WhenDown;
|
|
begin
|
|
GetMouse(cursor);
|
|
if cursor.h <> prev.h then
|
|
if cursor.v <> prev.v then
|
|
WhenDownChanged;
|
|
end;
|
|
|
|
procedure MainLoop;
|
|
begin
|
|
repeat {Until we click outside screen}
|
|
while button do
|
|
begin
|
|
GetMouse(cursor);
|
|
GetMouse(prev);
|
|
MoveTo(cursor.h, cursor.v);
|
|
LineTo(prev.h, prev.v);
|
|
repeat {Tight loop until button up}
|
|
WhenDown;
|
|
until not Button;
|
|
end;
|
|
until cursor.h < 0;
|
|
end;
|
|
|
|
begin
|
|
|
|
ShowDrawing;
|
|
Writeln('Started');
|
|
MainLoop;
|
|
Writeln('stopped');
|
|
|
|
end. |