| Index: third_party/WebKit/WebCore/rendering/RenderBoxModelObject.h
|
| ===================================================================
|
| --- third_party/WebKit/WebCore/rendering/RenderBoxModelObject.h (revision 9391)
|
| +++ third_party/WebKit/WebCore/rendering/RenderBoxModelObject.h (working copy)
|
| @@ -39,6 +39,13 @@
|
| int relativePositionOffsetY() const;
|
| IntSize relativePositionOffset() const { return IntSize(relativePositionOffsetX(), relativePositionOffsetY()); }
|
|
|
| + // IE extensions. Used to calculate offsetWidth/Height. Overridden by inlines (RenderFlow)
|
| + // to return the remaining width on a given line (and the height of a single line).
|
| + virtual int offsetLeft() const;
|
| + virtual int offsetTop() const;
|
| + virtual int offsetWidth() const = 0;
|
| + virtual int offsetHeight() const = 0;
|
| +
|
| virtual void styleWillChange(StyleDifference, const RenderStyle* newStyle);
|
| virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle);
|
| virtual void updateBoxModelInfoFromStyle();
|
| @@ -46,9 +53,39 @@
|
| RenderLayer* layer() const { return m_layer; }
|
| virtual bool requiresLayer() const { return isRoot() || isPositioned() || isRelPositioned() || isTransparent() || hasOverflowClip() || hasTransform() || hasMask() || hasReflection(); }
|
|
|
| + // This will work on inlines to return the bounding box of all of the lines' border boxes.
|
| + virtual IntRect borderBoundingBox() const = 0;
|
| +
|
| + // Virtual since table cells override
|
| + virtual int paddingTop(bool includeIntrinsicPadding = true) const;
|
| + virtual int paddingBottom(bool includeIntrinsicPadding = true) const;
|
| + virtual int paddingLeft(bool includeIntrinsicPadding = true) const;
|
| + virtual int paddingRight(bool includeIntrinsicPadding = true) const;
|
| +
|
| + virtual int borderTop() const { return style()->borderTopWidth(); }
|
| + virtual int borderBottom() const { return style()->borderBottomWidth(); }
|
| + virtual int borderLeft() const { return style()->borderLeftWidth(); }
|
| + virtual int borderRight() const { return style()->borderRightWidth(); }
|
| +
|
| + virtual int marginTop() const = 0;
|
| + virtual int marginBottom() const = 0;
|
| + virtual int marginLeft() const = 0;
|
| + virtual int marginRight() const = 0;
|
| +
|
| + bool hasHorizontalBordersPaddingOrMargin() const { return hasHorizontalBordersOrPadding() || marginLeft() != 0 || marginRight() != 0; }
|
| + bool hasHorizontalBordersOrPadding() const { return borderLeft() != 0 || borderRight() != 0 || paddingLeft() != 0 || paddingRight() != 0; }
|
| +
|
| + virtual void childBecameNonInline(RenderObject* /*child*/) { }
|
| +
|
| + virtual void paintFillLayerExtended(const PaintInfo&, const Color&, const FillLayer*, int clipY, int clipHeight,
|
| + int tx, int ty, int width, int height, InlineFlowBox* = 0, CompositeOperator = CompositeSourceOver);
|
| +
|
| +protected:
|
| + void calculateBackgroundImageGeometry(const FillLayer*, int tx, int ty, int w, int h, IntRect& destRect, IntPoint& phase, IntSize& tileSize);
|
| + IntSize calculateBackgroundSize(const FillLayer*, int scaledWidth, int scaledHeight) const;
|
| +
|
| private:
|
| virtual bool isBoxModelObject() const { return true; }
|
| -
|
| friend class RenderView;
|
|
|
| RenderLayer* m_layer;
|
|
|