Changeset 36349 in webkit
- Timestamp:
- Sep 11, 2008 9:44:40 PM (16 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r36347 r36349 1 2008-09-11 Timothy Hatcher <timothy@apple.com> 2 3 Add a renderedImage method to DOMNode to get an image 4 of the rendering for the node and it's descendants. 5 6 <rdar://problem/5849349> Would like API to create 7 an image for a DOM node 8 9 Reviewed by Oliver Hunt. 10 11 * bindings/objc/DOM.mm: 12 (-[DOMNode renderedImage]): Call Frame::nodeImage. 13 * bindings/objc/DOMPrivate.h: 14 * page/Frame.h: 15 * page/mac/FrameMac.mm: 16 (WebCore::Frame::nodeImage): 17 1 18 2008-09-08 Chris Marrin <cmarrin@apple.com> 2 19 -
trunk/WebCore/bindings/objc/DOM.mm
r36263 r36349 455 455 @end 456 456 457 @implementation DOMNode (DOMNodeExtensionsPendingPublic) 458 459 - (NSImage *)renderedImage 460 { 461 if (WebCore::Node *node = [self _node]) 462 if (WebCore::Frame* frame = node->document()->frame()) 463 return frame->nodeImage(node); 464 return nil; 465 } 466 467 @end 468 457 469 @implementation DOMRange (DOMRangeExtensions) 458 470 -
trunk/WebCore/bindings/objc/DOMPrivate.h
r32664 r36349 61 61 #import <WebCore/DOMUIEventPrivate.h> 62 62 #import <WebCore/DOMWheelEventPrivate.h> 63 64 @interface DOMNode (DOMNodeExtensionsPendingPublic) 65 - (NSImage *)renderedImage; 66 @end 63 67 64 68 // FIXME: this should be removed as soon as all internal Apple uses of it have been replaced with -
trunk/WebCore/page/Frame.h
r35900 r36349 307 307 NSImage* selectionImage(bool forceBlackText = false) const; 308 308 NSImage* snapshotDragImage(Node*, NSRect* imageRect, NSRect* elementRect) const; 309 NSImage* nodeImage(Node*) const; 309 310 310 311 private: -
trunk/WebCore/page/mac/FrameMac.mm
r36263 r36349 349 349 } 350 350 351 NSImage* Frame::nodeImage(Node* node) const 352 { 353 RenderObject* renderer = node->renderer(); 354 if (!renderer) 355 return nil; 356 357 d->m_doc->updateLayout(); // forces style recalc 358 359 IntRect topLevelRect; 360 NSRect paintingRect = renderer->paintingRootRect(topLevelRect); 361 362 d->m_elementToDraw = node; // invoke special sub-tree drawing mode 363 NSImage* result = imageFromRect(paintingRect); 364 d->m_elementToDraw = 0; 365 366 return result; 367 } 368 351 369 NSDictionary* Frame::fontAttributesForSelectionStart() const 352 370 {
Note: See TracChangeset
for help on using the changeset viewer.