home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The C Users' Group Library 1994 August
/
wc-cdrom-cusersgrouplibrary-1994-08.iso
/
listings
/
v_10_07
/
1007032a
< prev
next >
Wrap
Text File
|
1992-03-22
|
987b
|
51 lines
// DR.L - Simple drawing program.
main
{
w = new window;
w.menu = new menu
<< (new menu ("&Draw")
<< (line_menu = new menuitem ("&Line"))
<< (circle_menu = new menuitem ("&Circle"))
<< (rectangle_menu = new menuitem ("&Rectangle")));
w.display_list = new displaylist;
line ();
w.show;
}
set_figure (menuitem, type)
{
if (::menuitem)
::menuitem.checked = false;
(::menuitem = menuitem).checked = true;
figure = type;
}
line {set_figure (line_menu, "line");}
circle {set_figure (circle_menu, "circle");}
rectangle {set_figure (rectangle_menu, "rectangle");}
startdrag (x1, y1, x2, y2)
{
w.cursor = "cross";
obj = new (figure) (x1, y1, x2, y2);
#pragma new circle, line, rectangle
w.xor = true;
obj.draw (w);
}
drag (x,y)
{
obj.draw (w);
obj.stretch_to (x, y);
obj.draw (w);
}
enddrag (x, y)
{
w.xor = false;
obj.draw (w);
w.display_list << obj;
w.cursor = "arrow";
}