2006-01-22 Alexander Kellett <lypanov@kde.org>
authoreseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 22 Jan 2006 09:57:32 +0000 (09:57 +0000)
committereseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 22 Jan 2006 09:57:32 +0000 (09:57 +0000)
commit43d65f100ecf2d5ed63b24d499edb7fa1651e9ba
tree75ac96f411295c6862aed63a0e172cba141a3ae2
parent60f28404bcd502e94da8f06b62ff4ca7b9798446
2006-01-22  Alexander Kellett  <lypanov@kde.org>

        Reviewed by eseidel.

        Add support for custom fill/strokes on text.
        http://bugzilla.opendarwin.org/show_bug.cgi?id=6448

        * kcanvas/RenderSVGText.cpp:
        (RenderSVGText::paint): use new painter setup/teardown infrastructure
        * kcanvas/device/KRenderingPaintServer.h:
        (KRenderingPaintServer::KRenderingPaintServer):
        (KRenderingPaintServer::setup):
        (KRenderingPaintServer::render):
        (KRenderingPaintServer::teardown):
        (KRenderingPaintServer::isPaintingText):
        (KRenderingPaintServer::setPaintingText):
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
        (setupShadingWithStyle):
        (renderShadingWithStyle):
        (teardownShadingWithStyle):
        (KRenderingPaintServerLinearGradientQuartz::draw):
        (KRenderingPaintServerLinearGradientQuartz::setup):
        (KRenderingPaintServerLinearGradientQuartz::render):
        (KRenderingPaintServerLinearGradientQuartz::teardown):
        (KRenderingPaintServerRadialGradientQuartz::draw):
        (KRenderingPaintServerRadialGradientQuartz::setup):
        (KRenderingPaintServerRadialGradientQuartz::render):
        (KRenderingPaintServerRadialGradientQuartz::teardown):
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
        (KRenderingPaintServerPatternQuartz::KRenderingPaintServerPatternQuartz):
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
        (KRenderingPaintServerQuartzHelper::strokePath):
        (KRenderingPaintServerQuartzHelper::clipToStrokePath):
        (KRenderingPaintServerQuartzHelper::fillPath):
        (KRenderingPaintServerQuartzHelper::clipToFillPath):
        (KRenderingPaintServerSolidQuartz::draw):
        (KRenderingPaintServerSolidQuartz::setup):
        (KRenderingPaintServerSolidQuartz::render):
        (KRenderingPaintServerSolidQuartz::teardown):
        (KRenderingPaintServerPatternQuartz::draw):
        (KRenderingPaintServerPatternQuartz::setup):
        (KRenderingPaintServerPatternQuartz::render):
        (KRenderingPaintServerPatternQuartz::teardown):
        * kcanvas/device/quartz/QuartzSupport.h: fix prototype
        * kcanvas/device/quartz/QuartzSupport.mm:
        (applyStrokeStyleToContext):
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
        (KSVGPainterFactory::fillPaintServer):
        (KSVGPainterFactory::strokePaintServer):
        (KSVGPainterFactory::cssPrimitiveToLength):
        (KSVGPainterFactory::strokePainter):
        (KSVGPainterFactory::fillPainter):
        * ksvg2/misc/KCanvasRenderingStyle.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@12281 268f45cc-cd09-0410-ab3c-d52691b4dbfc
120 files changed:
LayoutTests/ChangeLog
LayoutTests/svg/W3C-SVG-1.1/animate-elem-02-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-02-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-03-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-03-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-04-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-04-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-05-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-05-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-06-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-06-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-07-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-07-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-08-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-13-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-13-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-14-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-14-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-15-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-15-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-16-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-16-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-17-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-17-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-18-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-18-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-19-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-19-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-20-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-20-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-21-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-21-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-24-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/animate-elem-29-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/animate-elem-29-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/filters-blend-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/filters-blend-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/filters-example-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/filters-example-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.png
LayoutTests/svg/W3C-SVG-1.1/interact-events-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/interact-events-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/linking-uri-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/linking-uri-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/linking-uri-02-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/linking-uri-02-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/masking-mask-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/masking-path-04-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/masking-path-04-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/metadata-example-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/painting-fill-02-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/painting-fill-02-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/render-elems-06-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/render-elems-06-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/render-elems-07-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/render-elems-07-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/render-elems-08-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/render-elems-08-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-align-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-align-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-align-03-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-align-03-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-align-04-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-align-04-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-align-05-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-align-05-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-deco-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-deco-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-fonts-01-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-fonts-01-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-fonts-02-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-fonts-02-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-text-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-text-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-text-03-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-text-03-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-tref-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-tref-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-tspan-01-b-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-tspan-01-b-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-ws-01-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-ws-01-t-expected.png
LayoutTests/svg/W3C-SVG-1.1/text-ws-02-t-expected.checksum
LayoutTests/svg/W3C-SVG-1.1/text-ws-02-t-expected.png
LayoutTests/svg/custom/text-clip-expected.checksum
LayoutTests/svg/custom/text-clip-expected.png
LayoutTests/svg/custom/text-filter-expected.checksum
LayoutTests/svg/custom/text-filter-expected.png
LayoutTests/svg/custom/text-image-opacity-expected.checksum
LayoutTests/svg/custom/text-image-opacity-expected.png
WebCore/ChangeLog
WebCore/kcanvas/KCanvasResources.cpp
WebCore/kcanvas/KCanvasTypes.h [deleted file]
WebCore/kcanvas/RenderSVGText.cpp
WebCore/kcanvas/device/KRenderingPaintServer.h
WebCore/kcanvas/device/KRenderingPaintServerGradient.h
WebCore/kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm
WebCore/kcanvas/device/quartz/KRenderingPaintServerQuartz.h
WebCore/kcanvas/device/quartz/KRenderingPaintServerQuartz.mm
WebCore/kcanvas/device/quartz/QuartzSupport.h
WebCore/kcanvas/device/quartz/QuartzSupport.mm
WebCore/ksvg2/misc/KCanvasRenderingStyle.cpp
WebCore/ksvg2/misc/KCanvasRenderingStyle.h