Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(93)

Side by Side Diff: Source/core/paint/DeprecatedPaintLayerStackingNode.h

Issue 1327483003: Add documentation to 2 DeprecatedPaintLayer objects (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fixed the ASCII art to prevent multi-line comments. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved.
3 * Copyright (C) 2013 Intel Corporation. All rights reserved. 3 * Copyright (C) 2013 Intel Corporation. All rights reserved.
4 * 4 *
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
6 * 6 *
7 * Other contributors: 7 * Other contributors:
8 * Robert O'Callahan <roc+@cs.cmu.edu> 8 * Robert O'Callahan <roc+@cs.cmu.edu>
9 * David Baron <dbaron@fas.harvard.edu> 9 * David Baron <dbaron@fas.harvard.edu>
10 * Christian Biesinger <cbiesinger@web.de> 10 * Christian Biesinger <cbiesinger@web.de>
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 #include "wtf/OwnPtr.h" 51 #include "wtf/OwnPtr.h"
52 #include "wtf/Vector.h" 52 #include "wtf/Vector.h"
53 53
54 namespace blink { 54 namespace blink {
55 55
56 class DeprecatedPaintLayer; 56 class DeprecatedPaintLayer;
57 class DeprecatedPaintLayerCompositor; 57 class DeprecatedPaintLayerCompositor;
58 class ComputedStyle; 58 class ComputedStyle;
59 class LayoutBoxModelObject; 59 class LayoutBoxModelObject;
60 60
61 // DeprecatedPaintLayerStackingNode represents anything that is treated as a
62 // stacking context.
63 //
64 // Stacking contexts are the basis for the CSS painting algorithm. The paint
65 // order is determined by walking stacking contexts (or elements treated like a
66 // stacking context like positioned objects or floats) in an order defined by
67 // ‘z-index’. This walk is interleaved with content that is not a stacking.
68 // context. See CSS 2.1 appendix E for the actual algorithm
69 // http://www.w3.org/TR/CSS21/zindex.html
70 // See also DeprecatedPaintLayerPainter (in particular paintLayerContents) for
71 // our implementation of the walk.
72 //
73 // Stacking contexts form a subtree over the layout tree. Ideally we would want
74 // objects of this class to be a node in this tree but there are potential
75 // issues with stale pointers so we rely on DeprecatedPaintLayer's tree
76 // structure.
77 //
78 // This class's purpose is to represent a node in the stacking context tree
79 // (aka paint tree). It currently caches the z-order lists for painting and
80 // hit-testing.
81 //
82 // To implement any z-order list iterations, use
83 // DeprecatedPaintLayerStackingNodeIterator and
84 // DeprecatedPaintLayerStackingNodeReverseIterator.
85 //
86 // This class is NOT DEPRECATED, DeprecatedPaintLayer is and we match its
87 // naming.
61 class CORE_EXPORT DeprecatedPaintLayerStackingNode { 88 class CORE_EXPORT DeprecatedPaintLayerStackingNode {
62 WTF_MAKE_FAST_ALLOCATED(DeprecatedPaintLayerStackingNode); 89 WTF_MAKE_FAST_ALLOCATED(DeprecatedPaintLayerStackingNode);
63 WTF_MAKE_NONCOPYABLE(DeprecatedPaintLayerStackingNode); 90 WTF_MAKE_NONCOPYABLE(DeprecatedPaintLayerStackingNode);
64 public: 91 public:
65 explicit DeprecatedPaintLayerStackingNode(LayoutBoxModelObject&); 92 explicit DeprecatedPaintLayerStackingNode(LayoutBoxModelObject&);
66 ~DeprecatedPaintLayerStackingNode(); 93 ~DeprecatedPaintLayerStackingNode();
67 94
68 int zIndex() const { return layoutObject().style()->zIndex(); } 95 int zIndex() const { return layoutObject().style()->zIndex(); }
69 96
70 bool isStackingContext() const { return layoutObject().style()->isStackingCo ntext(); } 97 bool isStackingContext() const { return layoutObject().style()->isStackingCo ntext(); }
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 220
194 private: 221 private:
195 DeprecatedPaintLayerStackingNode* m_stackingNode; 222 DeprecatedPaintLayerStackingNode* m_stackingNode;
196 bool m_previousMutationAllowedState; 223 bool m_previousMutationAllowedState;
197 }; 224 };
198 #endif 225 #endif
199 226
200 } // namespace blink 227 } // namespace blink
201 228
202 #endif // DeprecatedPaintLayerStackingNode_h 229 #endif // DeprecatedPaintLayerStackingNode_h
OLDNEW
« no previous file with comments | « Source/core/paint/DeprecatedPaintLayerClipper.h ('k') | Source/core/paint/DeprecatedPaintLayerStackingNodeIterator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698