This is Rectangle.m in view mode; [Download] [Up]
#import "draw.h" @implementation Rectangle : Graphic /* * This is the canonical Graphic. * It doesn't get much simpler than this. * * This line is just a stub to get genstrings to generate * a .strings file entry for the name of this type of Graphic. * The name is used in the Undo New <Whatever> menu item. * * NXLocalString("Rectangle", NULL, "Name of the tool that draws rectangles, i.e., the %s of the New %s operation.") */ + initialize /* * This bumps the class version so that we can compatibly read * old Graphic objects out of an archive. */ { [Rectangle setVersion:1]; return self; } /* Methods overridden from superclass */ - (float)naturalAspectRatio /* * The natural aspect ratio of a rectangle is 1.0 (a square). */ { return 1.0; } - (Graphic *)colorAcceptorAt:(const NXPoint *)point { if ([self hit:point]) return self; return nil; } - draw { if (bounds.size.width < 1.0 || bounds.size.height < 1.0) return self; if ([self fill]) { [self setFillColor]; NXRectFill(&bounds); } if (!gFlags.nooutline) { [self setLineColor]; PSrectstroke(bounds.origin.x, bounds.origin.y, bounds.size.width, bounds.size.height); } return self; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.