]>
git.saurik.com Git - iphone-api.git/blob - WebCore/RenderSVGGradientStop.h
2 * This file is part of the WebKit project.
4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org>
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
16 * You should have received a copy of the GNU Library General Public License
17 * along with this library; see the file COPYING.LIB. If not, write to
18 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 * Boston, MA 02110-1301, USA.
23 #ifndef RenderSVGGradientStop_h
24 #define RenderSVGGradientStop_h
27 #include "RenderObject.h"
31 class SVGGradientElement
;
34 // This class exists mostly so we can hear about gradient stop style changes
35 class RenderSVGGradientStop
: public RenderObject
{
37 RenderSVGGradientStop(SVGStopElement
*);
38 virtual ~RenderSVGGradientStop();
40 virtual const char* renderName() const { return "RenderSVGGradientStop"; }
42 virtual void layout();
44 // This override is needed to prevent crashing on <svg><stop /></svg>
45 // RenderObject's default impl asks the parent Object and RenderSVGRoot
46 // asks all child RenderObjects for overflow rects, thus infinite loop.
47 // https://bugs.webkit.org/show_bug.cgi?id=20400
48 virtual IntRect
clippedOverflowRectForRepaint(RenderBox
*) { return IntRect(); }
51 virtual void styleDidChange(StyleDifference
, const RenderStyle
* oldStyle
);
54 SVGGradientElement
* gradientElement() const;
59 #endif // RenderSVGGradientStop_h