Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to draw a rectangle around a (graph) view?




On Apr 25, 2007, at 8:48 AM, Arthur C. wrote:

I have a window with two graph views in it. They are NSView subclasses of which I don't have the source code.
I have implemented a screen capture of the view by taking the rectangle forming the view using
NSRect graphRect = [self frame];
This gives the rectangle in the coordinates of the superview. Now I extend the rectangle to be able to capture things just outside the graph view (like axis labels etc.). The screen capture can then be done by
NSData * myScreenCaptureData = [[self superview] dataWithPDFInsideRect: captureRect];


which is saved to file as PDF data.

Question is how to draw the rectangle showing what part is to be captured (the captureRect).
It is too large to be drawn from within the graphView. But where should it be done then? I have nothing but an NSWindow and the two graph views. So should it be done from the NSWindow? But then I would have to subclass the NSWindow(?)

I wrote some sample code several years ago that shows a couple of ways to draw a selection area. You can find it at


http://developer.apple.com/samplecode/Cropped_Image/index.html

In your case, I'd use a crop marker to select the area to capture, then use -dataWithPDFInsideRect:. You'll want to turn off the crop marker if you're not drawing to the screen, of course. Use [NSGraphicsContext currentContextDrawingToScreen] to determine that.


Another question: is it necessary to do all the drawing in the drawRect method?

It's a really good idea to do so, especially when you're still learning.

-jcr

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/email@hidden

This email sent to email@hidden
References: 
 >How to draw a rectangle around a (graph) view? (From: "Arthur C." <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.