OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2004, 2005, 2009 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 12 matching lines...) Expand all Loading... |
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
24 */ | 24 */ |
25 | 25 |
26 #ifndef SVGRenderTreeAsText_h | 26 #ifndef SVGRenderTreeAsText_h |
27 #define SVGRenderTreeAsText_h | 27 #define SVGRenderTreeAsText_h |
28 | 28 |
29 #include "platform/text/TextStream.h" | 29 #include "platform/text/TextStream.h" |
30 | 30 |
31 namespace blink { | 31 namespace blink { |
32 | 32 |
33 class Color; | |
34 class RenderObject; | 33 class RenderObject; |
35 class RenderSVGGradientStop; | 34 class RenderSVGGradientStop; |
36 class RenderSVGImage; | 35 class RenderSVGImage; |
37 class RenderSVGInlineText; | 36 class RenderSVGInlineText; |
38 class RenderSVGShape; | 37 class RenderSVGShape; |
39 class RenderSVGRoot; | 38 class RenderSVGRoot; |
40 class RenderSVGText; | 39 class RenderSVGText; |
41 class AffineTransform; | |
42 | 40 |
43 // functions used by the main RenderTreeAsText code | 41 // functions used by the main RenderTreeAsText code |
44 void write(TextStream&, const RenderSVGShape&, int indent); | 42 void write(TextStream&, const RenderSVGShape&, int indent); |
45 void write(TextStream&, const RenderSVGRoot&, int indent); | 43 void write(TextStream&, const RenderSVGRoot&, int indent); |
46 void writeSVGGradientStop(TextStream&, const RenderSVGGradientStop&, int indent)
; | 44 void writeSVGGradientStop(TextStream&, const RenderSVGGradientStop&, int indent)
; |
47 void writeSVGResourceContainer(TextStream&, const RenderObject&, int indent); | 45 void writeSVGResourceContainer(TextStream&, const RenderObject&, int indent); |
48 void writeSVGContainer(TextStream&, const RenderObject&, int indent); | 46 void writeSVGContainer(TextStream&, const RenderObject&, int indent); |
49 void writeSVGImage(TextStream&, const RenderSVGImage&, int indent); | 47 void writeSVGImage(TextStream&, const RenderSVGImage&, int indent); |
50 void writeSVGInlineText(TextStream&, const RenderSVGInlineText&, int indent); | 48 void writeSVGInlineText(TextStream&, const RenderSVGInlineText&, int indent); |
51 void writeSVGText(TextStream&, const RenderSVGText&, int indent); | 49 void writeSVGText(TextStream&, const RenderSVGText&, int indent); |
52 void writeResources(TextStream&, const RenderObject&, int indent); | 50 void writeResources(TextStream&, const RenderObject&, int indent); |
53 | 51 |
54 // helper operators defined used in various classes to dump the render tree. | |
55 TextStream& operator<<(TextStream&, const AffineTransform&); | |
56 TextStream& operator<<(TextStream&, const Color&); | |
57 | |
58 // helper operators specific to dumping the render tree. these are used in vario
us classes to dump the render tree | |
59 // these could be defined in separate namespace to avoid matching these generic
signatures unintentionally. | |
60 | |
61 template<typename Item> | |
62 TextStream& operator<<(TextStream& ts, const Vector<Item*>& v) | |
63 { | |
64 ts << "["; | |
65 | |
66 for (unsigned i = 0; i < v.size(); i++) { | |
67 ts << *v[i]; | |
68 if (i < v.size() - 1) | |
69 ts << ", "; | |
70 } | |
71 | |
72 ts << "]"; | |
73 return ts; | |
74 } | |
75 | |
76 template<typename Pointer> | |
77 TextStream& operator<<(TextStream& ts, Pointer* t) | |
78 { | |
79 ts << reinterpret_cast<intptr_t>(t); | |
80 return ts; | |
81 } | |
82 | |
83 } // namespace blink | 52 } // namespace blink |
84 | 53 |
85 #endif // SVGRenderTreeAsText_h | 54 #endif // SVGRenderTreeAsText_h |
OLD | NEW |