2010-04-22  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        SVGPaintServer needs to be converted to the new RenderSVGResource* system
        https://bugs.webkit.org/show_bug.cgi?id=37986

        No functional changes, just move the SVGPaintServer* classes from svg/graphics/ to rendering/, the new location for the RenderSVGResource* classes.
        This is a preparation for the real patch which follows soon.

        * Android.mk: Rename files and move to the right location.
        * GNUmakefile.am: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.vcproj/WebCore.vcproj: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * rendering/RenderSVGResource.cpp: Copied from svg/graphics/SVGPaintServer.cpp.
        * rendering/RenderSVGResourceGradient.cpp: Copied from svg/graphics/SVGPaintServerGradient.cpp.
        * rendering/RenderSVGResourceGradient.h: Copied from svg/graphics/SVGPaintServerGradient.h.
        * rendering/RenderSVGResourceLinearGradient.cpp: Copied from svg/graphics/SVGPaintServerLinearGradient.cpp.
        * rendering/RenderSVGResourceLinearGradient.h: Copied from svg/graphics/SVGPaintServerLinearGradient.h.
        * rendering/RenderSVGResourcePattern.cpp: Copied from svg/graphics/SVGPaintServerPattern.cpp.
        * rendering/RenderSVGResourcePattern.h: Copied from svg/graphics/SVGPaintServerPattern.h.
        * rendering/RenderSVGResourceRadialGradient.cpp: Copied from svg/graphics/SVGPaintServerRadialGradient.cpp.
        * rendering/RenderSVGResourceRadialGradient.h: Copied from svg/graphics/SVGPaintServerRadialGradient.h.
        * rendering/RenderSVGResourceSolidColor.cpp: Copied from svg/graphics/SVGPaintServerSolid.cpp.
        * rendering/RenderSVGResourceSolidColor.h: Copied from svg/graphics/SVGPaintServerSolid.h.
        * rendering/SVGRenderTreeAsText.cpp: Change include file names.
        * svg/SVGFont.cpp: Ditto.
        * svg/SVGGradientElement.cpp: Ditto.
        * svg/SVGGradientElement.h: Ditto.
        * svg/SVGLinearGradientElement.cpp: Ditto.
        * svg/SVGPatternElement.cpp: Ditto.
        * svg/SVGPatternElement.h: Ditto.
        * svg/SVGRadialGradientElement.cpp: Ditto.
        * svg/graphics/SVGPaintServer.cpp: Removed.
        * svg/graphics/SVGPaintServerGradient.cpp: Removed.
        * svg/graphics/SVGPaintServerGradient.h: Removed.
        * svg/graphics/SVGPaintServerLinearGradient.cpp: Removed.
        * svg/graphics/SVGPaintServerLinearGradient.h: Removed.
        * svg/graphics/SVGPaintServerPattern.cpp: Removed.
        * svg/graphics/SVGPaintServerPattern.h: Removed.
        * svg/graphics/SVGPaintServerRadialGradient.cpp: Removed.
        * svg/graphics/SVGPaintServerRadialGradient.h: Removed.
        * svg/graphics/SVGPaintServerSolid.cpp: Removed.
        * svg/graphics/SVGPaintServerSolid.h: Removed.
        * svg/graphics/SVGResourceListener.h: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58093 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/Android.mk b/WebCore/Android.mk
index 18b1743..b27914c 100644
--- a/WebCore/Android.mk
+++ b/WebCore/Android.mk
@@ -606,10 +606,16 @@
 	rendering/RenderSVGInline.cpp \
 	rendering/RenderSVGInlineText.cpp \
 	rendering/RenderSVGModelObject.cpp \
+	rendering/RenderSVGResource.cpp \
 	rendering/RenderSVGResourceClipper.cpp \
 	rendering/RenderSVGResourceFilter.cpp \
+	rendering/RenderSVGResourceGradient.cpp \
+	rendering/RenderSVGResourceLinearGradient.cpp \
 	rendering/RenderSVGResourceMarker.cpp \
 	rendering/RenderSVGResourceMasker.cpp \
+	rendering/RenderSVGResourcePattern.cpp \
+	rendering/RenderSVGResourceRadialGradient.cpp \
+	rendering/RenderSVGResourceSolidColor.cpp \
 	rendering/RenderSVGRoot.cpp \
 	rendering/RenderSVGShadowTreeRootContainer.cpp \
 	rendering/RenderSVGTSpan.cpp \
@@ -855,12 +861,6 @@
 	svg/animation/SVGSMILElement.cpp \
 	\
 	svg/graphics/SVGImage.cpp \
-	svg/graphics/SVGPaintServer.cpp \
-	svg/graphics/SVGPaintServerGradient.cpp \
-	svg/graphics/SVGPaintServerLinearGradient.cpp \
-	svg/graphics/SVGPaintServerPattern.cpp \
-	svg/graphics/SVGPaintServerRadialGradient.cpp \
-	svg/graphics/SVGPaintServerSolid.cpp \
 	svg/graphics/SVGResource.cpp \
 	\
 	svg/graphics/filters/SVGFEConvolveMatrix.cpp \
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index ea82ff2..58c6bfe 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,51 @@
+2010-04-22  Nikolas Zimmermann  <nzimmermann@rim.com>
+
+        Reviewed by Dirk Schulze.
+
+        SVGPaintServer needs to be converted to the new RenderSVGResource* system
+        https://bugs.webkit.org/show_bug.cgi?id=37986
+
+        No functional changes, just move the SVGPaintServer* classes from svg/graphics/ to rendering/, the new location for the RenderSVGResource* classes.
+        This is a preparation for the real patch which follows soon.
+
+        * Android.mk: Rename files and move to the right location.
+        * GNUmakefile.am: Ditto.
+        * WebCore.gypi: Ditto.
+        * WebCore.pro: Ditto.
+        * WebCore.vcproj/WebCore.vcproj: Ditto.
+        * WebCore.xcodeproj/project.pbxproj: Ditto.
+        * rendering/RenderSVGResource.cpp: Copied from svg/graphics/SVGPaintServer.cpp.
+        * rendering/RenderSVGResourceGradient.cpp: Copied from svg/graphics/SVGPaintServerGradient.cpp.
+        * rendering/RenderSVGResourceGradient.h: Copied from svg/graphics/SVGPaintServerGradient.h.
+        * rendering/RenderSVGResourceLinearGradient.cpp: Copied from svg/graphics/SVGPaintServerLinearGradient.cpp.
+        * rendering/RenderSVGResourceLinearGradient.h: Copied from svg/graphics/SVGPaintServerLinearGradient.h.
+        * rendering/RenderSVGResourcePattern.cpp: Copied from svg/graphics/SVGPaintServerPattern.cpp.
+        * rendering/RenderSVGResourcePattern.h: Copied from svg/graphics/SVGPaintServerPattern.h.
+        * rendering/RenderSVGResourceRadialGradient.cpp: Copied from svg/graphics/SVGPaintServerRadialGradient.cpp.
+        * rendering/RenderSVGResourceRadialGradient.h: Copied from svg/graphics/SVGPaintServerRadialGradient.h.
+        * rendering/RenderSVGResourceSolidColor.cpp: Copied from svg/graphics/SVGPaintServerSolid.cpp.
+        * rendering/RenderSVGResourceSolidColor.h: Copied from svg/graphics/SVGPaintServerSolid.h.
+        * rendering/SVGRenderTreeAsText.cpp: Change include file names.
+        * svg/SVGFont.cpp: Ditto.
+        * svg/SVGGradientElement.cpp: Ditto.
+        * svg/SVGGradientElement.h: Ditto.
+        * svg/SVGLinearGradientElement.cpp: Ditto.
+        * svg/SVGPatternElement.cpp: Ditto.
+        * svg/SVGPatternElement.h: Ditto.
+        * svg/SVGRadialGradientElement.cpp: Ditto.
+        * svg/graphics/SVGPaintServer.cpp: Removed.
+        * svg/graphics/SVGPaintServerGradient.cpp: Removed.
+        * svg/graphics/SVGPaintServerGradient.h: Removed.
+        * svg/graphics/SVGPaintServerLinearGradient.cpp: Removed.
+        * svg/graphics/SVGPaintServerLinearGradient.h: Removed.
+        * svg/graphics/SVGPaintServerPattern.cpp: Removed.
+        * svg/graphics/SVGPaintServerPattern.h: Removed.
+        * svg/graphics/SVGPaintServerRadialGradient.cpp: Removed.
+        * svg/graphics/SVGPaintServerRadialGradient.h: Removed.
+        * svg/graphics/SVGPaintServerSolid.cpp: Removed.
+        * svg/graphics/SVGPaintServerSolid.h: Removed.
+        * svg/graphics/SVGResourceListener.h: Removed.
+
 2010-04-22  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
 
         Reviewed by Simon Hausmann.
diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
index 93b685e..e513f36 100644
--- a/WebCore/GNUmakefile.am
+++ b/WebCore/GNUmakefile.am
@@ -3119,15 +3119,26 @@
 	WebCore/rendering/RenderSVGInlineText.h \
 	WebCore/rendering/RenderSVGModelObject.cpp \
 	WebCore/rendering/RenderSVGModelObject.h \
+	WebCore/rendering/RenderSVGResource.cpp \
 	WebCore/rendering/RenderSVGResource.h \
 	WebCore/rendering/RenderSVGResourceClipper.cpp \
 	WebCore/rendering/RenderSVGResourceClipper.h \
 	WebCore/rendering/RenderSVGResourceFilter.cpp \
 	WebCore/rendering/RenderSVGResourceFilter.h \
+	WebCore/rendering/RenderSVGResourceGradient.cpp \
+	WebCore/rendering/RenderSVGResourceGradient.h \
+	WebCore/rendering/RenderSVGResourceLinearGradient.cpp \
+	WebCore/rendering/RenderSVGResourceLinearGradient.h \
 	WebCore/rendering/RenderSVGResourceMarker.cpp \
 	WebCore/rendering/RenderSVGResourceMarker.h \
 	WebCore/rendering/RenderSVGResourceMasker.cpp \
 	WebCore/rendering/RenderSVGResourceMasker.h \
+	WebCore/rendering/RenderSVGResourcePattern.cpp \
+	WebCore/rendering/RenderSVGResourcePattern.h \
+	WebCore/rendering/RenderSVGResourceRadialGradient.cpp \
+	WebCore/rendering/RenderSVGResourceRadialGradient.h \
+	WebCore/rendering/RenderSVGResourceSolidColor.cpp \
+	WebCore/rendering/RenderSVGResourceSolidColor.h \
 	WebCore/rendering/RenderSVGRoot.cpp \
 	WebCore/rendering/RenderSVGRoot.h \
 	WebCore/rendering/RenderSVGShadowTreeRootContainer.cpp \
@@ -3449,21 +3460,8 @@
 	WebCore/svg/animation/SVGSMILElement.h \
 	WebCore/svg/graphics/SVGImage.cpp \
 	WebCore/svg/graphics/SVGImage.h \
-	WebCore/svg/graphics/SVGPaintServer.cpp \
 	WebCore/svg/graphics/SVGPaintServer.h \
-	WebCore/svg/graphics/SVGPaintServerGradient.cpp \
-	WebCore/svg/graphics/SVGPaintServerGradient.h \
-	WebCore/svg/graphics/SVGPaintServerLinearGradient.cpp \
-	WebCore/svg/graphics/SVGPaintServerLinearGradient.h \
-	WebCore/svg/graphics/SVGPaintServerPattern.cpp \
-	WebCore/svg/graphics/SVGPaintServerPattern.h \
-	WebCore/svg/graphics/SVGPaintServerRadialGradient.cpp \
-	WebCore/svg/graphics/SVGPaintServerRadialGradient.h \
-	WebCore/svg/graphics/SVGPaintServerSolid.cpp \
-	WebCore/svg/graphics/SVGPaintServerSolid.h \
 	WebCore/svg/graphics/SVGResource.cpp \
-	WebCore/svg/graphics/SVGResource.h \
-	WebCore/svg/graphics/SVGResourceListener.h \
 	WebCore/svg/graphics/filters/SVGDistantLightSource.h \
 	WebCore/svg/graphics/filters/SVGFEConvolveMatrix.cpp \
 	WebCore/svg/graphics/filters/SVGFEConvolveMatrix.h \
diff --git a/WebCore/WebCore.gypi b/WebCore/WebCore.gypi
index d4d6767..9b74320 100644
--- a/WebCore/WebCore.gypi
+++ b/WebCore/WebCore.gypi
@@ -3169,15 +3169,26 @@
             'rendering/RenderSVGInlineText.h',
             'rendering/RenderSVGModelObject.cpp',
             'rendering/RenderSVGModelObject.h',
+            'rendering/RenderSVGResource.cpp',
             'rendering/RenderSVGResource.h',
             'rendering/RenderSVGResourceClipper.cpp',
             'rendering/RenderSVGResourceClipper.h',
             'rendering/RenderSVGResourceFilter.cpp',
             'rendering/RenderSVGResourceFilter.h',
+            'rendering/RenderSVGResourceGradient.cpp',
+            'rendering/RenderSVGResourceGradient.h',
+            'rendering/RenderSVGResourceLinearGradient.cpp',
+            'rendering/RenderSVGResourceLinearGradient.h',
             'rendering/RenderSVGResourceMarker.cpp',
             'rendering/RenderSVGResourceMarker.h',
             'rendering/RenderSVGResourceMasker.cpp',
             'rendering/RenderSVGResourceMasker.h',
+            'rendering/RenderSVGResourcePattern.cpp',
+            'rendering/RenderSVGResourcePattern.h',
+            'rendering/RenderSVGResourceRadialGradient.cpp',
+            'rendering/RenderSVGResourceRadialGradient.h',
+            'rendering/RenderSVGResourceSolidColor.cpp',
+            'rendering/RenderSVGResourceSolidColor.h',
             'rendering/RenderSVGRoot.cpp',
             'rendering/RenderSVGRoot.h',
             'rendering/RenderSVGShadowTreeRootContainer.cpp',
@@ -3392,21 +3403,9 @@
             'svg/graphics/filters/SVGSpotLightSource.h',
             'svg/graphics/SVGImage.cpp',
             'svg/graphics/SVGImage.h',
-            'svg/graphics/SVGPaintServer.cpp',
             'svg/graphics/SVGPaintServer.h',
-            'svg/graphics/SVGPaintServerGradient.cpp',
-            'svg/graphics/SVGPaintServerGradient.h',
-            'svg/graphics/SVGPaintServerLinearGradient.cpp',
-            'svg/graphics/SVGPaintServerLinearGradient.h',
-            'svg/graphics/SVGPaintServerPattern.cpp',
-            'svg/graphics/SVGPaintServerPattern.h',
-            'svg/graphics/SVGPaintServerRadialGradient.cpp',
-            'svg/graphics/SVGPaintServerRadialGradient.h',
-            'svg/graphics/SVGPaintServerSolid.cpp',
-            'svg/graphics/SVGPaintServerSolid.h',
             'svg/graphics/SVGResource.cpp',
             'svg/graphics/SVGResource.h',
-            'svg/graphics/SVGResourceListener.h',
             'svg/ColorDistance.cpp',
             'svg/ColorDistance.h',
             'svg/ElementTimeControl.h',
diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro
index eaeee26..a305609 100644
--- a/WebCore/WebCore.pro
+++ b/WebCore/WebCore.pro
@@ -1730,9 +1730,14 @@
     rendering/RenderSVGModelObject.h \
     rendering/RenderSVGResource.h \
     rendering/RenderSVGResourceClipper.h \
-    rendering/RenderSVGResourceFilter.h \
+    rendering/RenderSVGResourceFilter.h \ 
+    rendering/RenderSVGResourceGradient.h \
+    rendering/RenderSVGResourceLinearGradient.h \
     rendering/RenderSVGResourceMarker.h \
     rendering/RenderSVGResourceMasker.h \
+    rendering/RenderSVGResourcePattern.h \
+    rendering/RenderSVGResourceRadialGradient.h \
+    rendering/RenderSVGResourceSolidColor.h \
     rendering/RenderSVGRoot.h \
     rendering/RenderSVGShadowTreeRootContainer.h \
     rendering/RenderSVGText.h \
@@ -1814,12 +1819,7 @@
     svg/graphics/filters/SVGFilter.h \
     svg/graphics/filters/SVGLightSource.h \
     svg/graphics/SVGImage.h \
-    svg/graphics/SVGPaintServerGradient.h \
     svg/graphics/SVGPaintServer.h \
-    svg/graphics/SVGPaintServerLinearGradient.h \
-    svg/graphics/SVGPaintServerPattern.h \
-    svg/graphics/SVGPaintServerRadialGradient.h \
-    svg/graphics/SVGPaintServerSolid.h \
     svg/graphics/SVGResource.h \
     svg/SVGAElement.h \
     svg/SVGAltGlyphElement.h \
@@ -2685,12 +2685,6 @@
         svg/graphics/filters/SVGFilterBuilder.cpp \
         svg/graphics/filters/SVGLightSource.cpp \
         svg/graphics/SVGImage.cpp \
-        svg/graphics/SVGPaintServer.cpp \
-        svg/graphics/SVGPaintServerGradient.cpp \
-        svg/graphics/SVGPaintServerLinearGradient.cpp \
-        svg/graphics/SVGPaintServerPattern.cpp \
-        svg/graphics/SVGPaintServerRadialGradient.cpp \
-        svg/graphics/SVGPaintServerSolid.cpp \
         svg/graphics/SVGResource.cpp \
         rendering/RenderForeignObject.cpp \
         rendering/RenderPath.cpp \
@@ -2702,10 +2696,16 @@
         rendering/RenderSVGInline.cpp \
         rendering/RenderSVGInlineText.cpp \
         rendering/RenderSVGModelObject.cpp \
+        rendering/RenderSVGResource.cpp \
         rendering/RenderSVGResourceClipper.cpp \
         rendering/RenderSVGResourceFilter.cpp \
+        rendering/RenderSVGResourceGradient.cpp \
+        rendering/RenderSVGResourceLinearGradient.cpp \
         rendering/RenderSVGResourceMarker.cpp \
         rendering/RenderSVGResourceMasker.cpp \
+        rendering/RenderSVGResourcePattern.cpp \
+        rendering/RenderSVGResourceRadialGradient.cpp \
+        rendering/RenderSVGResourceSolidColor.cpp \
         rendering/RenderSVGRoot.cpp \
         rendering/RenderSVGShadowTreeRootContainer.cpp \
         rendering/RenderSVGText.cpp \
diff --git a/WebCore/WebCore.vcproj/WebCore.vcproj b/WebCore/WebCore.vcproj/WebCore.vcproj
index 403c94d..1049da9 100644
--- a/WebCore/WebCore.vcproj/WebCore.vcproj
+++ b/WebCore/WebCore.vcproj/WebCore.vcproj
@@ -27919,6 +27919,10 @@
 				>

 			</File>

 			<File

+				RelativePath="..\rendering\RenderSVGResource.cpp"

+				>

+			</File>

+			<File

 				RelativePath="..\rendering\RenderSVGResource.h"

 				>

 			</File>

@@ -27939,6 +27943,22 @@
 				>

 			</File>

 			<File

+				RelativePath="..\rendering\RenderSVGResourceGradient.cpp"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceGradient.h"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceLinearGradient.cpp"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceLinearGradient.h"

+				>

+			</File>

+			<File

 				RelativePath="..\rendering\RenderSVGResourceMarker.cpp"

 				>

 			</File>

@@ -27955,6 +27975,30 @@
 				>

 			</File>

 			<File

+				RelativePath="..\rendering\RenderSVGResourcePattern.cpp"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourcePattern.h"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceRadialGradient.cpp"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceRadialGradient.h"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceSolidColor.cpp"

+				>

+			</File>

+			<File

+				RelativePath="..\rendering\RenderSVGResourceSolidColor.h"

+				>

+			</File>

+			<File

 				RelativePath="..\rendering\RenderSVGRoot.cpp"

 				>

 			</File>

@@ -42310,54 +42354,10 @@
 					>

 				</File>

 				<File

-					RelativePath="..\svg\graphics\SVGPaintServer.cpp"

-					>

-				</File>

-				<File

 					RelativePath="..\svg\graphics\SVGPaintServer.h"

 					>

 				</File>

 				<File

-					RelativePath="..\svg\graphics\SVGPaintServerGradient.cpp"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerGradient.h"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerLinearGradient.cpp"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerLinearGradient.h"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerPattern.cpp"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerPattern.h"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerRadialGradient.cpp"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerRadialGradient.h"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerSolid.cpp"

-					>

-				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGPaintServerSolid.h"

-					>

-				</File>

-				<File

 					RelativePath="..\svg\graphics\SVGResource.cpp"

 					>

 				</File>

@@ -42365,10 +42365,6 @@
 					RelativePath="..\svg\graphics\SVGResource.h"

 					>

 				</File>

-				<File

-					RelativePath="..\svg\graphics\SVGResourceListener.h"

-					>

-				</File>

 				<Filter

 					Name="filters"

 					>

diff --git a/WebCore/WebCore.xcodeproj/project.pbxproj b/WebCore/WebCore.xcodeproj/project.pbxproj
index fe6d457..9adda3c 100644
--- a/WebCore/WebCore.xcodeproj/project.pbxproj
+++ b/WebCore/WebCore.xcodeproj/project.pbxproj
@@ -46,6 +46,7 @@
 		080081970ED3B2DD00C53BC0 /* WMLAnchorElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 080081950ED3B2DD00C53BC0 /* WMLAnchorElement.h */; };
 		0804BF6E0EE09C3B0006C000 /* WMLDoElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0804BF6C0EE09C3B0006C000 /* WMLDoElement.cpp */; };
 		0804BF6F0EE09C3B0006C000 /* WMLDoElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 0804BF6D0EE09C3B0006C000 /* WMLDoElement.h */; };
+		08082373117987C100241DE8 /* RenderSVGResourceContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 08082372117987C100241DE8 /* RenderSVGResourceContainer.h */; };
 		080AEC810ED8708B00DF4CCE /* WMLIntrinsicEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 080AEC7D0ED8708A00DF4CCE /* WMLIntrinsicEvent.cpp */; };
 		080AEC820ED8708B00DF4CCE /* WMLIntrinsicEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 080AEC7E0ED8708B00DF4CCE /* WMLIntrinsicEvent.h */; };
 		080AEC830ED8708B00DF4CCE /* WMLIntrinsicEventHandler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 080AEC7F0ED8708B00DF4CCE /* WMLIntrinsicEventHandler.cpp */; };
@@ -84,6 +85,9 @@
 		084D2834110A7FCB0038239A /* SVGAnimatedPropertyTraits.h in Headers */ = {isa = PBXBuildFile; fileRef = 084D2832110A7FCB0038239A /* SVGAnimatedPropertyTraits.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		084DBAA10ED39D360038C226 /* WMLVariables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 084DBA9D0ED39D350038C226 /* WMLVariables.cpp */; };
 		084DBAA20ED39D360038C226 /* WMLVariables.h in Headers */ = {isa = PBXBuildFile; fileRef = 084DBA9E0ED39D360038C226 /* WMLVariables.h */; };
+		08563BB4117861780012B578 /* RenderSVGResourcePattern.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08563BB2117861770012B578 /* RenderSVGResourcePattern.cpp */; };
+		08563BB5117861780012B578 /* RenderSVGResourcePattern.h in Headers */ = {isa = PBXBuildFile; fileRef = 08563BB3117861770012B578 /* RenderSVGResourcePattern.h */; };
+		08563BD0117865F50012B578 /* RenderSVGResource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08563BCF117865F50012B578 /* RenderSVGResource.cpp */; };
 		08591AA50F085C4E009BACB1 /* InputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 08591AA40F085C4E009BACB1 /* InputElement.h */; settings = {ATTRIBUTES = (Private, ); }; };
 		085AFDC80F2977350061F2B3 /* WMLFormControlElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 085AFDC60F2977350061F2B3 /* WMLFormControlElement.cpp */; };
 		085AFDC90F2977350061F2B3 /* WMLFormControlElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 085AFDC70F2977350061F2B3 /* WMLFormControlElement.h */; settings = {ATTRIBUTES = (); }; };
@@ -139,10 +143,21 @@
 		08A484770E5272C500C3FE76 /* ScriptElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A484750E5272C500C3FE76 /* ScriptElement.cpp */; };
 		08A484780E5272C500C3FE76 /* ScriptElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 08A484760E5272C500C3FE76 /* ScriptElement.h */; };
 		08A48A6E0E86CF6D00E225DD /* JSSVGElementInstanceCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A48A6D0E86CF6D00E225DD /* JSSVGElementInstanceCustom.cpp */; };
+		08A7E92711805EDA00D0B870 /* SVGPaintServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 08A7E92611805EDA00D0B870 /* SVGPaintServer.h */; };
+		08A7E92B11805EF100D0B870 /* SVGResource.h in Headers */ = {isa = PBXBuildFile; fileRef = 08A7E92A11805EF100D0B870 /* SVGResource.h */; };
+		08A7E92F11805EFD00D0B870 /* SVGResource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08A7E92E11805EFD00D0B870 /* SVGResource.cpp */; };
+		08C34AF51179C057002D7456 /* RenderSVGResourceGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C34AF11179C056002D7456 /* RenderSVGResourceGradient.cpp */; };
+		08C34AF61179C057002D7456 /* RenderSVGResourceGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C34AF21179C057002D7456 /* RenderSVGResourceGradient.h */; };
+		08C34AF71179C057002D7456 /* RenderSVGResourceLinearGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C34AF31179C057002D7456 /* RenderSVGResourceLinearGradient.cpp */; };
+		08C34AF81179C057002D7456 /* RenderSVGResourceLinearGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C34AF41179C057002D7456 /* RenderSVGResourceLinearGradient.h */; };
+		08C34AFD1179C072002D7456 /* RenderSVGResourceRadialGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C34AFB1179C072002D7456 /* RenderSVGResourceRadialGradient.cpp */; };
+		08C34AFE1179C072002D7456 /* RenderSVGResourceRadialGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C34AFC1179C072002D7456 /* RenderSVGResourceRadialGradient.h */; };
 		08C4C5180EF19A4000E4840F /* WMLImageElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C4C5140EF19A4000E4840F /* WMLImageElement.cpp */; };
 		08C4C5190EF19A4000E4840F /* WMLImageElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C4C5150EF19A4000E4840F /* WMLImageElement.h */; };
 		08C4C51A0EF19A4000E4840F /* WMLImageLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C4C5160EF19A4000E4840F /* WMLImageLoader.cpp */; };
 		08C4C51B0EF19A4000E4840F /* WMLImageLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C4C5170EF19A4000E4840F /* WMLImageLoader.h */; };
+		08C6A7AB117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C6A7A9117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.cpp */; };
+		08C6A7AC117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C6A7AA117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.h */; };
 		08C7A2C710DC7462002D368B /* SVGNames.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 656581E909D1508D000E61D7 /* SVGNames.h */; };
 		08C925190FCC7C4A00480DEC /* FilterEffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08C925170FCC7C4A00480DEC /* FilterEffect.cpp */; };
 		08C9251A0FCC7C4A00480DEC /* FilterEffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 08C925180FCC7C4A00480DEC /* FilterEffect.h */; };
@@ -3731,21 +3746,6 @@
 		B25599A30D00D8BA00BB825C /* SVGImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B255990B0D00D8B900BB825C /* SVGImage.cpp */; };
 		B25599A40D00D8BA00BB825C /* SVGImage.h in Headers */ = {isa = PBXBuildFile; fileRef = B255990C0D00D8B900BB825C /* SVGImage.h */; };
 		B25599A50D00D8BA00BB825C /* EmptyClients.h in Headers */ = {isa = PBXBuildFile; fileRef = B255990D0D00D8B900BB825C /* EmptyClients.h */; };
-		B25599A60D00D8BA00BB825C /* SVGPaintServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B255990E0D00D8B900BB825C /* SVGPaintServer.cpp */; };
-		B25599A70D00D8BA00BB825C /* SVGPaintServer.h in Headers */ = {isa = PBXBuildFile; fileRef = B255990F0D00D8B900BB825C /* SVGPaintServer.h */; };
-		B25599A80D00D8BA00BB825C /* SVGPaintServerGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B25599100D00D8B900BB825C /* SVGPaintServerGradient.cpp */; };
-		B25599A90D00D8BA00BB825C /* SVGPaintServerGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = B25599110D00D8B900BB825C /* SVGPaintServerGradient.h */; };
-		B25599AA0D00D8BA00BB825C /* SVGPaintServerLinearGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B25599120D00D8B900BB825C /* SVGPaintServerLinearGradient.cpp */; };
-		B25599AB0D00D8BA00BB825C /* SVGPaintServerLinearGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = B25599130D00D8B900BB825C /* SVGPaintServerLinearGradient.h */; };
-		B25599AC0D00D8BA00BB825C /* SVGPaintServerPattern.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B25599140D00D8B900BB825C /* SVGPaintServerPattern.cpp */; };
-		B25599AD0D00D8BA00BB825C /* SVGPaintServerPattern.h in Headers */ = {isa = PBXBuildFile; fileRef = B25599150D00D8B900BB825C /* SVGPaintServerPattern.h */; };
-		B25599AE0D00D8BA00BB825C /* SVGPaintServerRadialGradient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B25599160D00D8B900BB825C /* SVGPaintServerRadialGradient.cpp */; };
-		B25599AF0D00D8BA00BB825C /* SVGPaintServerRadialGradient.h in Headers */ = {isa = PBXBuildFile; fileRef = B25599170D00D8B900BB825C /* SVGPaintServerRadialGradient.h */; };
-		B25599B00D00D8BA00BB825C /* SVGPaintServerSolid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B25599180D00D8B900BB825C /* SVGPaintServerSolid.cpp */; };
-		B25599B10D00D8BA00BB825C /* SVGPaintServerSolid.h in Headers */ = {isa = PBXBuildFile; fileRef = B25599190D00D8B900BB825C /* SVGPaintServerSolid.h */; };
-		B25599B20D00D8BA00BB825C /* SVGResource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B255991A0D00D8B900BB825C /* SVGResource.cpp */; };
-		B25599B30D00D8BA00BB825C /* SVGResource.h in Headers */ = {isa = PBXBuildFile; fileRef = B255991B0D00D8B900BB825C /* SVGResource.h */; };
-		B25599B80D00D8BA00BB825C /* SVGResourceListener.h in Headers */ = {isa = PBXBuildFile; fileRef = B25599200D00D8B900BB825C /* SVGResourceListener.h */; };
 		B25DFAAF0B2E2929000E6510 /* JSSVGMatrixCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B25DFAAE0B2E2929000E6510 /* JSSVGMatrixCustom.cpp */; };
 		B262B8040D1F32D000158F09 /* SVGFont.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B262B8030D1F32D000158F09 /* SVGFont.cpp */; };
 		B26554EA0B80D74900A50EC3 /* RenderSVGTextPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B26554E80B80D74900A50EC3 /* RenderSVGTextPath.cpp */; };
@@ -5431,6 +5431,7 @@
 		080081950ED3B2DD00C53BC0 /* WMLAnchorElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLAnchorElement.h; sourceTree = "<group>"; };
 		0804BF6C0EE09C3B0006C000 /* WMLDoElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLDoElement.cpp; sourceTree = "<group>"; };
 		0804BF6D0EE09C3B0006C000 /* WMLDoElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLDoElement.h; sourceTree = "<group>"; };
+		08082372117987C100241DE8 /* RenderSVGResourceContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResourceContainer.h; sourceTree = "<group>"; };
 		080AEC7D0ED8708A00DF4CCE /* WMLIntrinsicEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLIntrinsicEvent.cpp; sourceTree = "<group>"; };
 		080AEC7E0ED8708B00DF4CCE /* WMLIntrinsicEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLIntrinsicEvent.h; sourceTree = "<group>"; };
 		080AEC7F0ED8708B00DF4CCE /* WMLIntrinsicEventHandler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLIntrinsicEventHandler.cpp; sourceTree = "<group>"; };
@@ -5467,6 +5468,9 @@
 		084D2832110A7FCB0038239A /* SVGAnimatedPropertyTraits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGAnimatedPropertyTraits.h; sourceTree = "<group>"; };
 		084DBA9D0ED39D350038C226 /* WMLVariables.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLVariables.cpp; sourceTree = "<group>"; };
 		084DBA9E0ED39D360038C226 /* WMLVariables.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLVariables.h; sourceTree = "<group>"; };
+		08563BB2117861770012B578 /* RenderSVGResourcePattern.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGResourcePattern.cpp; sourceTree = "<group>"; };
+		08563BB3117861770012B578 /* RenderSVGResourcePattern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResourcePattern.h; sourceTree = "<group>"; };
+		08563BCF117865F50012B578 /* RenderSVGResource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGResource.cpp; sourceTree = "<group>"; };
 		08591AA40F085C4E009BACB1 /* InputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InputElement.h; sourceTree = "<group>"; };
 		085AFDC60F2977350061F2B3 /* WMLFormControlElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLFormControlElement.cpp; sourceTree = "<group>"; };
 		085AFDC70F2977350061F2B3 /* WMLFormControlElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLFormControlElement.h; sourceTree = "<group>"; };
@@ -5510,10 +5514,21 @@
 		08A484750E5272C500C3FE76 /* ScriptElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ScriptElement.cpp; sourceTree = "<group>"; };
 		08A484760E5272C500C3FE76 /* ScriptElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScriptElement.h; sourceTree = "<group>"; };
 		08A48A6D0E86CF6D00E225DD /* JSSVGElementInstanceCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGElementInstanceCustom.cpp; sourceTree = "<group>"; };
+		08A7E92611805EDA00D0B870 /* SVGPaintServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGPaintServer.h; sourceTree = "<group>"; };
+		08A7E92A11805EF100D0B870 /* SVGResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGResource.h; sourceTree = "<group>"; };
+		08A7E92E11805EFD00D0B870 /* SVGResource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGResource.cpp; sourceTree = "<group>"; };
+		08C34AF11179C056002D7456 /* RenderSVGResourceGradient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGResourceGradient.cpp; sourceTree = "<group>"; };
+		08C34AF21179C057002D7456 /* RenderSVGResourceGradient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResourceGradient.h; sourceTree = "<group>"; };
+		08C34AF31179C057002D7456 /* RenderSVGResourceLinearGradient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGResourceLinearGradient.cpp; sourceTree = "<group>"; };
+		08C34AF41179C057002D7456 /* RenderSVGResourceLinearGradient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResourceLinearGradient.h; sourceTree = "<group>"; };
+		08C34AFB1179C072002D7456 /* RenderSVGResourceRadialGradient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGResourceRadialGradient.cpp; sourceTree = "<group>"; };
+		08C34AFC1179C072002D7456 /* RenderSVGResourceRadialGradient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResourceRadialGradient.h; sourceTree = "<group>"; };
 		08C4C5140EF19A4000E4840F /* WMLImageElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLImageElement.cpp; sourceTree = "<group>"; };
 		08C4C5150EF19A4000E4840F /* WMLImageElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLImageElement.h; sourceTree = "<group>"; };
 		08C4C5160EF19A4000E4840F /* WMLImageLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLImageLoader.cpp; sourceTree = "<group>"; };
 		08C4C5170EF19A4000E4840F /* WMLImageLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLImageLoader.h; sourceTree = "<group>"; };
+		08C6A7A9117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGResourceSolidColor.cpp; sourceTree = "<group>"; };
+		08C6A7AA117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResourceSolidColor.h; sourceTree = "<group>"; };
 		08C925170FCC7C4A00480DEC /* FilterEffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FilterEffect.cpp; path = filters/FilterEffect.cpp; sourceTree = "<group>"; };
 		08C925180FCC7C4A00480DEC /* FilterEffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FilterEffect.h; path = filters/FilterEffect.h; sourceTree = "<group>"; };
 		08CD61B80ED3929C002DDF51 /* WMLTaskElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLTaskElement.cpp; sourceTree = "<group>"; };
@@ -9066,21 +9081,6 @@
 		B255990B0D00D8B900BB825C /* SVGImage.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGImage.cpp; sourceTree = "<group>"; };
 		B255990C0D00D8B900BB825C /* SVGImage.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGImage.h; sourceTree = "<group>"; };
 		B255990D0D00D8B900BB825C /* EmptyClients.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = EmptyClients.h; sourceTree = "<group>"; };
-		B255990E0D00D8B900BB825C /* SVGPaintServer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPaintServer.cpp; sourceTree = "<group>"; };
-		B255990F0D00D8B900BB825C /* SVGPaintServer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGPaintServer.h; sourceTree = "<group>"; };
-		B25599100D00D8B900BB825C /* SVGPaintServerGradient.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPaintServerGradient.cpp; sourceTree = "<group>"; };
-		B25599110D00D8B900BB825C /* SVGPaintServerGradient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGPaintServerGradient.h; sourceTree = "<group>"; };
-		B25599120D00D8B900BB825C /* SVGPaintServerLinearGradient.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPaintServerLinearGradient.cpp; sourceTree = "<group>"; };
-		B25599130D00D8B900BB825C /* SVGPaintServerLinearGradient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGPaintServerLinearGradient.h; sourceTree = "<group>"; };
-		B25599140D00D8B900BB825C /* SVGPaintServerPattern.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPaintServerPattern.cpp; sourceTree = "<group>"; };
-		B25599150D00D8B900BB825C /* SVGPaintServerPattern.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGPaintServerPattern.h; sourceTree = "<group>"; };
-		B25599160D00D8B900BB825C /* SVGPaintServerRadialGradient.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPaintServerRadialGradient.cpp; sourceTree = "<group>"; };
-		B25599170D00D8B900BB825C /* SVGPaintServerRadialGradient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGPaintServerRadialGradient.h; sourceTree = "<group>"; };
-		B25599180D00D8B900BB825C /* SVGPaintServerSolid.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGPaintServerSolid.cpp; sourceTree = "<group>"; };
-		B25599190D00D8B900BB825C /* SVGPaintServerSolid.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGPaintServerSolid.h; sourceTree = "<group>"; };
-		B255991A0D00D8B900BB825C /* SVGResource.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGResource.cpp; sourceTree = "<group>"; };
-		B255991B0D00D8B900BB825C /* SVGResource.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGResource.h; sourceTree = "<group>"; };
-		B25599200D00D8B900BB825C /* SVGResourceListener.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SVGResourceListener.h; sourceTree = "<group>"; };
 		B25DFAAE0B2E2929000E6510 /* JSSVGMatrixCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSSVGMatrixCustom.cpp; sourceTree = "<group>"; };
 		B262B8030D1F32D000158F09 /* SVGFont.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SVGFont.cpp; sourceTree = "<group>"; };
 		B26554E80B80D74900A50EC3 /* RenderSVGTextPath.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGTextPath.cpp; sourceTree = "<group>"; };
@@ -14510,21 +14510,9 @@
 				B255989C0D00D8B800BB825C /* filters */,
 				B255990B0D00D8B900BB825C /* SVGImage.cpp */,
 				B255990C0D00D8B900BB825C /* SVGImage.h */,
-				B255990E0D00D8B900BB825C /* SVGPaintServer.cpp */,
-				B255990F0D00D8B900BB825C /* SVGPaintServer.h */,
-				B25599100D00D8B900BB825C /* SVGPaintServerGradient.cpp */,
-				B25599110D00D8B900BB825C /* SVGPaintServerGradient.h */,
-				B25599120D00D8B900BB825C /* SVGPaintServerLinearGradient.cpp */,
-				B25599130D00D8B900BB825C /* SVGPaintServerLinearGradient.h */,
-				B25599140D00D8B900BB825C /* SVGPaintServerPattern.cpp */,
-				B25599150D00D8B900BB825C /* SVGPaintServerPattern.h */,
-				B25599160D00D8B900BB825C /* SVGPaintServerRadialGradient.cpp */,
-				B25599170D00D8B900BB825C /* SVGPaintServerRadialGradient.h */,
-				B25599180D00D8B900BB825C /* SVGPaintServerSolid.cpp */,
-				B25599190D00D8B900BB825C /* SVGPaintServerSolid.h */,
-				B255991A0D00D8B900BB825C /* SVGResource.cpp */,
-				B255991B0D00D8B900BB825C /* SVGResource.h */,
-				B25599200D00D8B900BB825C /* SVGResourceListener.h */,
+				08A7E92611805EDA00D0B870 /* SVGPaintServer.h */,
+				08A7E92E11805EFD00D0B870 /* SVGResource.cpp */,
+				08A7E92A11805EF100D0B870 /* SVGResource.h */,
 			);
 			path = graphics;
 			sourceTree = "<group>";
@@ -15829,8 +15817,6 @@
 		F523D2F302DE443B018635CA /* rendering */ = {
 			isa = PBXGroup;
 			children = (
-				841FDC241178C9BE00F8AC9B /* RenderSVGResourceFilter.cpp */,
-				841FDC251178C9BE00F8AC9B /* RenderSVGResourceFilter.h */,
 				BC8C8FAA0DDCD2F200B592F4 /* style */,
 				A8CFF04B0A154F09000A4234 /* AutoTableLayout.cpp */,
 				A8CFF0490A154F09000A4234 /* AutoTableLayout.h */,
@@ -15975,13 +15961,27 @@
 				853CA9D10AEEC5E9002372DC /* RenderSVGInlineText.h */,
 				A8F5C0B70F9285AC0098E06B /* RenderSVGModelObject.cpp */,
 				A8F5C0B60F9285AC0098E06B /* RenderSVGModelObject.h */,
+				08563BCF117865F50012B578 /* RenderSVGResource.cpp */,
 				083192A7112B43050083C3B9 /* RenderSVGResource.h */,
 				84BDA16911358D2A00DBF64C /* RenderSVGResourceClipper.cpp */,
 				84BDA16A11358D2A00DBF64C /* RenderSVGResourceClipper.h */,
+				08082372117987C100241DE8 /* RenderSVGResourceContainer.h */,
+				841FDC241178C9BE00F8AC9B /* RenderSVGResourceFilter.cpp */,
+				841FDC251178C9BE00F8AC9B /* RenderSVGResourceFilter.h */,
+				08C34AF11179C056002D7456 /* RenderSVGResourceGradient.cpp */,
+				08C34AF21179C057002D7456 /* RenderSVGResourceGradient.h */,
+				08C34AF31179C057002D7456 /* RenderSVGResourceLinearGradient.cpp */,
+				08C34AF41179C057002D7456 /* RenderSVGResourceLinearGradient.h */,
 				8499A512115FB33000F566E3 /* RenderSVGResourceMarker.cpp */,
 				8499A513115FB33000F566E3 /* RenderSVGResourceMarker.h */,
 				083192A8112B43050083C3B9 /* RenderSVGResourceMasker.cpp */,
 				083192A9112B43050083C3B9 /* RenderSVGResourceMasker.h */,
+				08563BB2117861770012B578 /* RenderSVGResourcePattern.cpp */,
+				08563BB3117861770012B578 /* RenderSVGResourcePattern.h */,
+				08C34AFB1179C072002D7456 /* RenderSVGResourceRadialGradient.cpp */,
+				08C34AFC1179C072002D7456 /* RenderSVGResourceRadialGradient.h */,
+				08C6A7A9117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.cpp */,
+				08C6A7AA117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.h */,
 				AA31B5B20C1DFD1000AE7083 /* RenderSVGRoot.cpp */,
 				AA31B5B30C1DFD1000AE7083 /* RenderSVGRoot.h */,
 				08DAB9B81103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.cpp */,
@@ -18551,12 +18551,6 @@
 				B2227A4E0D00BF220071B782 /* SVGMPathElement.h in Headers */,
 				B2227A510D00BF220071B782 /* SVGNumberList.h in Headers */,
 				B2227A540D00BF220071B782 /* SVGPaint.h in Headers */,
-				B25599A70D00D8BA00BB825C /* SVGPaintServer.h in Headers */,
-				B25599A90D00D8BA00BB825C /* SVGPaintServerGradient.h in Headers */,
-				B25599AB0D00D8BA00BB825C /* SVGPaintServerLinearGradient.h in Headers */,
-				B25599AD0D00D8BA00BB825C /* SVGPaintServerPattern.h in Headers */,
-				B25599AF0D00D8BA00BB825C /* SVGPaintServerRadialGradient.h in Headers */,
-				B25599B10D00D8BA00BB825C /* SVGPaintServerSolid.h in Headers */,
 				B2227A570D00BF220071B782 /* SVGParserUtilities.h in Headers */,
 				B2227A590D00BF220071B782 /* SVGPathElement.h in Headers */,
 				B2227A5B0D00BF220071B782 /* SVGPathSeg.h in Headers */,
@@ -18585,8 +18579,6 @@
 				BC22747B0E8366E200E7F975 /* SVGRenderStyleDefs.h in Headers */,
 				A8F4FB940C169E7B002AFED5 /* SVGRenderSupport.h in Headers */,
 				B2EBDC9D0AF77E3400AE4A68 /* SVGRenderTreeAsText.h in Headers */,
-				B25599B30D00D8BA00BB825C /* SVGResource.h in Headers */,
-				B25599B80D00D8BA00BB825C /* SVGResourceListener.h in Headers */,
 				853CA9E90AEEC608002372DC /* SVGRootInlineBox.h in Headers */,
 				B2227AA30D00BF220071B782 /* SVGScriptElement.h in Headers */,
 				B2227AA60D00BF220071B782 /* SVGSetElement.h in Headers */,
@@ -18864,11 +18856,19 @@
 				9FA37EE41172FC8000C4CD55 /* ScriptProfileNode.h in Headers */,
 				9FA37EFB1172FDA600C4CD55 /* JSScriptProfile.h in Headers */,
 				9FA37EFD1172FDA600C4CD55 /* JSScriptProfileNode.h in Headers */,
+				08563BB5117861780012B578 /* RenderSVGResourcePattern.h in Headers */,
+				08082373117987C100241DE8 /* RenderSVGResourceContainer.h in Headers */,
+				08C34AF61179C057002D7456 /* RenderSVGResourceGradient.h in Headers */,
+				08C34AF81179C057002D7456 /* RenderSVGResourceLinearGradient.h in Headers */,
+				08C34AFE1179C072002D7456 /* RenderSVGResourceRadialGradient.h in Headers */,
 				895253DD116C4EF500CABF00 /* FileStreamProxy.h in Headers */,
 				895253DF116C4F0600CABF00 /* FileThreadTask.h in Headers */,
 				CEF418CF1179678C009D112C /* ViewportArguments.h in Headers */,
 				0FD3080F117CF7E700A791F7 /* RenderFrameBase.h in Headers */,
 				0FD308D6117D168500A791F7 /* RenderIFrame.h in Headers */,
+				08C6A7AC117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.h in Headers */,
+				08A7E92711805EDA00D0B870 /* SVGPaintServer.h in Headers */,
+				08A7E92B11805EF100D0B870 /* SVGResource.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -20835,12 +20835,6 @@
 				A833C7CA0A2CF06B00D57664 /* SVGNames.cpp in Sources */,
 				B2227A500D00BF220071B782 /* SVGNumberList.cpp in Sources */,
 				B2227A530D00BF220071B782 /* SVGPaint.cpp in Sources */,
-				B25599A60D00D8BA00BB825C /* SVGPaintServer.cpp in Sources */,
-				B25599A80D00D8BA00BB825C /* SVGPaintServerGradient.cpp in Sources */,
-				B25599AA0D00D8BA00BB825C /* SVGPaintServerLinearGradient.cpp in Sources */,
-				B25599AC0D00D8BA00BB825C /* SVGPaintServerPattern.cpp in Sources */,
-				B25599AE0D00D8BA00BB825C /* SVGPaintServerRadialGradient.cpp in Sources */,
-				B25599B00D00D8BA00BB825C /* SVGPaintServerSolid.cpp in Sources */,
 				B2227A560D00BF220071B782 /* SVGParserUtilities.cpp in Sources */,
 				B2227A580D00BF220071B782 /* SVGPathElement.cpp in Sources */,
 				B2227A5D0D00BF220071B782 /* SVGPathSegArc.cpp in Sources */,
@@ -20866,7 +20860,6 @@
 				BC22747A0E8366E200E7F975 /* SVGRenderStyleDefs.cpp in Sources */,
 				A8F4FB960C169E85002AFED5 /* SVGRenderSupport.cpp in Sources */,
 				B2EBDC9C0AF77E3400AE4A68 /* SVGRenderTreeAsText.cpp in Sources */,
-				B25599B20D00D8BA00BB825C /* SVGResource.cpp in Sources */,
 				853CA9E80AEEC608002372DC /* SVGRootInlineBox.cpp in Sources */,
 				B2227AA20D00BF220071B782 /* SVGScriptElement.cpp in Sources */,
 				B2227AA50D00BF220071B782 /* SVGSetElement.cpp in Sources */,
@@ -21100,11 +21093,18 @@
 				9FA37EE71172FCF000C4CD55 /* JSScriptProfileNodeCustom.cpp in Sources */,
 				9FA37EFA1172FDA600C4CD55 /* JSScriptProfile.cpp in Sources */,
 				9FA37EFC1172FDA600C4CD55 /* JSScriptProfileNode.cpp in Sources */,
+				08563BB4117861780012B578 /* RenderSVGResourcePattern.cpp in Sources */,
+				08563BD0117865F50012B578 /* RenderSVGResource.cpp in Sources */,
+				08C34AF51179C057002D7456 /* RenderSVGResourceGradient.cpp in Sources */,
+				08C34AF71179C057002D7456 /* RenderSVGResourceLinearGradient.cpp in Sources */,
+				08C34AFD1179C072002D7456 /* RenderSVGResourceRadialGradient.cpp in Sources */,
 				895253DC116C4EF500CABF00 /* FileStreamProxy.cpp in Sources */,
 				CEF418CE1179678C009D112C /* ViewportArguments.cpp in Sources */,
 				0FD3080E117CF7E700A791F7 /* RenderFrameBase.cpp in Sources */,
 				0FD308D5117D168500A791F7 /* RenderIFrame.cpp in Sources */,
+				08C6A7AB117DFBAB00FEA1A2 /* RenderSVGResourceSolidColor.cpp in Sources */,
 				973889A0116EA9DC00ADF313 /* DocumentWriter.cpp in Sources */,
+				08A7E92F11805EFD00D0B870 /* SVGResource.cpp in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
diff --git a/WebCore/svg/graphics/SVGPaintServer.cpp b/WebCore/rendering/RenderSVGResource.cpp
similarity index 98%
rename from WebCore/svg/graphics/SVGPaintServer.cpp
rename to WebCore/rendering/RenderSVGResource.cpp
index aeb69ae..5c333c0 100644
--- a/WebCore/svg/graphics/SVGPaintServer.cpp
+++ b/WebCore/rendering/RenderSVGResource.cpp
@@ -33,8 +33,8 @@
 #include "GraphicsContext.h"
 #include "NodeRenderStyle.h"
 #include "RenderObject.h"
+#include "RenderSVGResourceSolidColor.h"
 #include "RenderStyle.h"
-#include "SVGPaintServerSolid.h"
 #include "SVGStyledElement.h"
 #include "SVGURIReference.h"
 
diff --git a/WebCore/svg/graphics/SVGPaintServerGradient.cpp b/WebCore/rendering/RenderSVGResourceGradient.cpp
similarity index 97%
rename from WebCore/svg/graphics/SVGPaintServerGradient.cpp
rename to WebCore/rendering/RenderSVGResourceGradient.cpp
index 6e6ebfc..a9d1a83 100644
--- a/WebCore/svg/graphics/SVGPaintServerGradient.cpp
+++ b/WebCore/rendering/RenderSVGResourceGradient.cpp
@@ -28,16 +28,16 @@
 #include "config.h"
 
 #if ENABLE(SVG)
-#include "SVGPaintServerGradient.h"
+#include "RenderSVGResourceGradient.h"
 
 #include "FloatConversion.h"
 #include "GraphicsContext.h"
 #include "ImageBuffer.h"
 #include "RenderObject.h"
+#include "RenderSVGResourceLinearGradient.h"
+#include "RenderSVGResourceRadialGradient.h"
 #include "RenderView.h"
 #include "SVGGradientElement.h"
-#include "SVGPaintServerLinearGradient.h"
-#include "SVGPaintServerRadialGradient.h"
 #include "SVGRenderSupport.h"
 #include "SVGRenderTreeAsText.h"
 
diff --git a/WebCore/rendering/RenderSVGResourceGradient.h b/WebCore/rendering/RenderSVGResourceGradient.h
new file mode 100644
index 0000000..eb8e184
--- /dev/null
+++ b/WebCore/rendering/RenderSVGResourceGradient.h
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
+ *               2008 Eric Seidel <eric@webkit.org>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#ifndef RenderSVGResourceGradient_h
+#define RenderSVGResourceGradient_h
+
+#if ENABLE(SVG)
+
+#include "AffineTransform.h"
+#include "Color.h"
+#include "Gradient.h"
+#include "GraphicsContext.h"
+#include "SVGPaintServer.h"
+
+#include <wtf/RefCounted.h>
+#include <wtf/RefPtr.h>
+
+namespace WebCore {
+
+class ImageBuffer;
+class SVGGradientElement;
+
+typedef std::pair<float, Color> SVGGradientStop;
+
+class SVGPaintServerGradient : public SVGPaintServer {
+public:
+    virtual ~SVGPaintServerGradient();
+
+    void setGradient(PassRefPtr<Gradient>);
+    Gradient* gradient() const;
+
+    // Gradient start and end points are percentages when used in boundingBox mode.
+    // For instance start point with value (0,0) is top-left and end point with
+    // value (100, 100) is bottom-right. BoundingBox mode is enabled by default.
+    bool boundingBoxMode() const;
+    void setBoundingBoxMode(bool mode = true);
+
+    AffineTransform gradientTransform() const;
+    void setGradientTransform(const AffineTransform&);
+
+    void setGradientStops(const Vector<SVGGradientStop>& stops) { m_stops = stops; }
+    const Vector<SVGGradientStop>& gradientStops() const { return m_stops; }
+
+    virtual TextStream& externalRepresentation(TextStream&) const;
+
+    virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
+    virtual void teardown(GraphicsContext*&, const RenderObject*, SVGPaintTargetType, bool isPaintingText) const;
+
+protected:
+    SVGPaintServerGradient(const SVGGradientElement* owner);
+    
+private:
+    Vector<SVGGradientStop> m_stops;
+    RefPtr<Gradient> m_gradient;
+    bool m_boundingBoxMode;
+    AffineTransform m_gradientTransform;
+    const SVGGradientElement* m_ownerElement;
+
+#if PLATFORM(CG)
+public:
+    mutable GraphicsContext* m_savedContext;
+    mutable OwnPtr<ImageBuffer> m_imageBuffer;
+#endif
+};
+
+inline SVGGradientStop makeGradientStop(float offset, const Color& color)
+{
+    return std::make_pair(offset, color);
+}
+
+} // namespace WebCore
+
+#endif
+
+#endif // RenderSVGResourceGradient_h
diff --git a/WebCore/svg/graphics/SVGPaintServerLinearGradient.cpp b/WebCore/rendering/RenderSVGResourceLinearGradient.cpp
similarity index 97%
rename from WebCore/svg/graphics/SVGPaintServerLinearGradient.cpp
rename to WebCore/rendering/RenderSVGResourceLinearGradient.cpp
index 08db2d2..9daec98 100644
--- a/WebCore/svg/graphics/SVGPaintServerLinearGradient.cpp
+++ b/WebCore/rendering/RenderSVGResourceLinearGradient.cpp
@@ -26,7 +26,8 @@
 #include "config.h"
 
 #if ENABLE(SVG)
-#include "SVGPaintServerLinearGradient.h"
+#include "RenderSVGResourceLinearGradient.h"
+
 #include "SVGRenderTreeAsText.h"
 
 namespace WebCore {
diff --git a/WebCore/svg/graphics/SVGPaintServerSolid.h b/WebCore/rendering/RenderSVGResourceLinearGradient.h
similarity index 60%
copy from WebCore/svg/graphics/SVGPaintServerSolid.h
copy to WebCore/rendering/RenderSVGResourceLinearGradient.h
index 680b0fe..228a12d 100644
--- a/WebCore/svg/graphics/SVGPaintServerSolid.h
+++ b/WebCore/rendering/RenderSVGResourceLinearGradient.h
@@ -23,38 +23,40 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#ifndef SVGPaintServerSolid_h
-#define SVGPaintServerSolid_h
+#ifndef RenderSVGResourceLinearGradient_h
+#define RenderSVGResourceLinearGradient_h
 
 #if ENABLE(SVG)
 
-#include "Color.h"
-#include "SVGPaintServer.h"
+#include "FloatPoint.h"
+#include "RenderSVGResourceGradient.h"
 
 namespace WebCore {
 
-    class SVGPaintServerSolid : public SVGPaintServer {
-    public:
-        static PassRefPtr<SVGPaintServerSolid> create() { return adoptRef(new SVGPaintServerSolid); }
-        virtual ~SVGPaintServerSolid();
+class SVGPaintServerLinearGradient : public SVGPaintServerGradient {
+public:
+    static PassRefPtr<SVGPaintServerLinearGradient> create(const SVGGradientElement* owner) { return adoptRef(new SVGPaintServerLinearGradient(owner)); }
+    virtual ~SVGPaintServerLinearGradient();
 
-        virtual SVGPaintServerType type() const { return SolidPaintServer; }
+    virtual SVGPaintServerType type() const { return LinearGradientPaintServer; }
 
-        Color color() const;
-        void setColor(const Color&);
+    FloatPoint gradientStart() const;
+    void setGradientStart(const FloatPoint&);
 
-        virtual TextStream& externalRepresentation(TextStream&) const;
+    FloatPoint gradientEnd() const;
+    void setGradientEnd(const FloatPoint&);
 
-        virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
+    virtual TextStream& externalRepresentation(TextStream&) const;
 
-    private:
-        SVGPaintServerSolid();
+private:
+    SVGPaintServerLinearGradient(const SVGGradientElement* owner);
 
-        Color m_color;
-    };
+    FloatPoint m_start;
+    FloatPoint m_end;
+};
 
 } // namespace WebCore
 
 #endif
 
-#endif // SVGPaintServerSolid_h
+#endif // RenderSVGResourceLinearGradient_h
diff --git a/WebCore/svg/graphics/SVGPaintServerPattern.cpp b/WebCore/rendering/RenderSVGResourcePattern.cpp
similarity index 98%
rename from WebCore/svg/graphics/SVGPaintServerPattern.cpp
rename to WebCore/rendering/RenderSVGResourcePattern.cpp
index 7fc75fb..d7cbd8a 100644
--- a/WebCore/svg/graphics/SVGPaintServerPattern.cpp
+++ b/WebCore/rendering/RenderSVGResourcePattern.cpp
@@ -27,7 +27,7 @@
 #include "config.h"
 
 #if ENABLE(SVG)
-#include "SVGPaintServerPattern.h"
+#include "RenderSVGResourcePattern.h"
 
 #include "AffineTransform.h"
 #include "GraphicsContext.h"
diff --git a/WebCore/rendering/RenderSVGResourcePattern.h b/WebCore/rendering/RenderSVGResourcePattern.h
new file mode 100644
index 0000000..1698d63
--- /dev/null
+++ b/WebCore/rendering/RenderSVGResourcePattern.h
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#ifndef RenderSVGResourcePattern_h
+#define RenderSVGResourcePattern_h
+
+#if ENABLE(SVG)
+
+#include "AffineTransform.h"
+#include "FloatRect.h"
+#include "Pattern.h"
+#include "SVGPaintServer.h"
+
+#include <memory>
+
+#include <wtf/OwnPtr.h>
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+class GraphicsContext;
+class ImageBuffer;
+class SVGPatternElement;
+
+class SVGPaintServerPattern : public SVGPaintServer {
+public:
+    static PassRefPtr<SVGPaintServerPattern> create(const SVGPatternElement* owner) { return adoptRef(new SVGPaintServerPattern(owner)); }
+
+    virtual ~SVGPaintServerPattern();
+
+    virtual SVGPaintServerType type() const { return PatternPaintServer; }
+
+    // Pattern boundaries
+    void setPatternBoundaries(const FloatRect&);
+    FloatRect patternBoundaries() const;
+
+    ImageBuffer* tile() const;
+    void setTile(PassOwnPtr<ImageBuffer>);
+
+    AffineTransform patternTransform() const;
+    void setPatternTransform(const AffineTransform&);
+
+    virtual TextStream& externalRepresentation(TextStream&) const;
+
+    virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
+    virtual void teardown(GraphicsContext*&, const RenderObject*, SVGPaintTargetType, bool isPaintingText) const;
+
+private:
+    SVGPaintServerPattern(const SVGPatternElement*);
+    
+    OwnPtr<ImageBuffer> m_tile;
+    const SVGPatternElement* m_ownerElement;
+    AffineTransform m_patternTransform;
+    FloatRect m_patternBoundaries;
+
+    mutable RefPtr<Pattern> m_pattern;
+};
+
+} // namespace WebCore
+
+#endif
+
+#endif // RenderSVGResourcePattern_h
diff --git a/WebCore/svg/graphics/SVGPaintServerRadialGradient.cpp b/WebCore/rendering/RenderSVGResourceRadialGradient.cpp
similarity index 97%
rename from WebCore/svg/graphics/SVGPaintServerRadialGradient.cpp
rename to WebCore/rendering/RenderSVGResourceRadialGradient.cpp
index a795ab5..5c867ff 100644
--- a/WebCore/svg/graphics/SVGPaintServerRadialGradient.cpp
+++ b/WebCore/rendering/RenderSVGResourceRadialGradient.cpp
@@ -26,7 +26,8 @@
 #include "config.h"
 
 #if ENABLE(SVG)
-#include "SVGPaintServerRadialGradient.h"
+#include "RenderSVGResourceRadialGradient.h"
+
 #include "SVGRenderTreeAsText.h"
 
 namespace WebCore {
diff --git a/WebCore/rendering/RenderSVGResourceRadialGradient.h b/WebCore/rendering/RenderSVGResourceRadialGradient.h
new file mode 100644
index 0000000..44236e3
--- /dev/null
+++ b/WebCore/rendering/RenderSVGResourceRadialGradient.h
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#ifndef RenderSVGResourceRadialGradient_h
+#define RenderSVGResourceRadialGradient_h
+
+#if ENABLE(SVG)
+
+#include "FloatPoint.h"
+#include "RenderSVGResourceGradient.h"
+
+namespace WebCore {
+
+class SVGPaintServerRadialGradient : public SVGPaintServerGradient {
+public:
+    static PassRefPtr<SVGPaintServerRadialGradient> create(const SVGGradientElement* owner) { return adoptRef(new SVGPaintServerRadialGradient(owner)); }
+    virtual ~SVGPaintServerRadialGradient();
+
+    virtual SVGPaintServerType type() const { return RadialGradientPaintServer; }
+
+    FloatPoint gradientCenter() const;
+    void setGradientCenter(const FloatPoint&);
+
+    FloatPoint gradientFocal() const;
+    void setGradientFocal(const FloatPoint&);
+
+    float gradientRadius() const;
+    void setGradientRadius(float);
+
+    virtual TextStream& externalRepresentation(TextStream&) const;
+
+private:
+    SVGPaintServerRadialGradient(const SVGGradientElement* owner);
+
+    float m_radius;
+    FloatPoint m_center;
+    FloatPoint m_focal;
+};
+
+} // namespace WebCore
+
+#endif
+
+#endif // RenderSVGResourceRadialGradient_h
diff --git a/WebCore/svg/graphics/SVGPaintServerSolid.cpp b/WebCore/rendering/RenderSVGResourceSolidColor.cpp
similarity index 97%
rename from WebCore/svg/graphics/SVGPaintServerSolid.cpp
rename to WebCore/rendering/RenderSVGResourceSolidColor.cpp
index 8921bb0..9da1343 100644
--- a/WebCore/svg/graphics/SVGPaintServerSolid.cpp
+++ b/WebCore/rendering/RenderSVGResourceSolidColor.cpp
@@ -27,7 +27,7 @@
 #include "config.h"
 
 #if ENABLE(SVG)
-#include "SVGPaintServerSolid.h"
+#include "RenderSVGResourceSolidColor.h"
 
 #include "GraphicsContext.h"
 #include "RenderPath.h"
diff --git a/WebCore/svg/graphics/SVGPaintServerSolid.h b/WebCore/rendering/RenderSVGResourceSolidColor.h
similarity index 66%
rename from WebCore/svg/graphics/SVGPaintServerSolid.h
rename to WebCore/rendering/RenderSVGResourceSolidColor.h
index 680b0fe..8c8bcb2 100644
--- a/WebCore/svg/graphics/SVGPaintServerSolid.h
+++ b/WebCore/rendering/RenderSVGResourceSolidColor.h
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#ifndef SVGPaintServerSolid_h
-#define SVGPaintServerSolid_h
+#ifndef RenderSVGResourceSolidColor_h
+#define RenderSVGResourceSolidColor_h
 
 #if ENABLE(SVG)
 
@@ -33,28 +33,28 @@
 
 namespace WebCore {
 
-    class SVGPaintServerSolid : public SVGPaintServer {
-    public:
-        static PassRefPtr<SVGPaintServerSolid> create() { return adoptRef(new SVGPaintServerSolid); }
-        virtual ~SVGPaintServerSolid();
+class SVGPaintServerSolid : public SVGPaintServer {
+public:
+    static PassRefPtr<SVGPaintServerSolid> create() { return adoptRef(new SVGPaintServerSolid); }
+    virtual ~SVGPaintServerSolid();
 
-        virtual SVGPaintServerType type() const { return SolidPaintServer; }
+    virtual SVGPaintServerType type() const { return SolidPaintServer; }
 
-        Color color() const;
-        void setColor(const Color&);
+    Color color() const;
+    void setColor(const Color&);
 
-        virtual TextStream& externalRepresentation(TextStream&) const;
+    virtual TextStream& externalRepresentation(TextStream&) const;
 
-        virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
+    virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
 
-    private:
-        SVGPaintServerSolid();
+private:
+    SVGPaintServerSolid();
 
-        Color m_color;
-    };
+    Color m_color;
+};
 
 } // namespace WebCore
 
 #endif
 
-#endif // SVGPaintServerSolid_h
+#endif // RenderSVGResourceSolidColor_h
diff --git a/WebCore/rendering/SVGRenderTreeAsText.cpp b/WebCore/rendering/SVGRenderTreeAsText.cpp
index 0f1f15d..c651df5 100644
--- a/WebCore/rendering/SVGRenderTreeAsText.cpp
+++ b/WebCore/rendering/SVGRenderTreeAsText.cpp
@@ -42,16 +42,16 @@
 #include "RenderSVGInlineText.h"
 #include "RenderSVGResourceClipper.h"
 #include "RenderSVGResourceFilter.h"
+#include "RenderSVGResourceGradient.h"
 #include "RenderSVGResourceMarker.h"
 #include "RenderSVGResourceMasker.h"
+#include "RenderSVGResourcePattern.h"
+#include "RenderSVGResourceSolidColor.h"
 #include "RenderSVGRoot.h"
 #include "RenderSVGText.h"
 #include "RenderTreeAsText.h"
 #include "SVGCharacterLayoutInfo.h"
 #include "SVGInlineTextBox.h"
-#include "SVGPaintServerGradient.h"
-#include "SVGPaintServerPattern.h"
-#include "SVGPaintServerSolid.h"
 #include "SVGRootInlineBox.h"
 #include "SVGStyledElement.h"
 #include <math.h>
diff --git a/WebCore/svg/SVGFont.cpp b/WebCore/svg/SVGFont.cpp
index dacbac2..1388b9a 100644
--- a/WebCore/svg/SVGFont.cpp
+++ b/WebCore/svg/SVGFont.cpp
@@ -27,6 +27,7 @@
 #include "CSSFontSelector.h"
 #include "GraphicsContext.h"
 #include "RenderObject.h"
+#include "RenderSVGResourceSolidColor.h"
 #include "SimpleFontData.h"
 #include "SVGAltGlyphElement.h"
 #include "SVGFontData.h"
@@ -35,8 +36,6 @@
 #include "SVGFontElement.h"
 #include "SVGFontFaceElement.h"
 #include "SVGMissingGlyphElement.h"
-#include "SVGPaintServer.h"
-#include "SVGPaintServerSolid.h"
 #include "XMLNames.h"
 
 using namespace WTF::Unicode;
diff --git a/WebCore/svg/SVGGradientElement.cpp b/WebCore/svg/SVGGradientElement.cpp
index f573265..0dcbce3 100644
--- a/WebCore/svg/SVGGradientElement.cpp
+++ b/WebCore/svg/SVGGradientElement.cpp
@@ -27,9 +27,9 @@
 #include "MappedAttribute.h"
 #include "RenderPath.h"
 #include "RenderSVGHiddenContainer.h"
+#include "RenderSVGResourceLinearGradient.h"
+#include "RenderSVGResourceRadialGradient.h"
 #include "SVGNames.h"
-#include "SVGPaintServerLinearGradient.h"
-#include "SVGPaintServerRadialGradient.h"
 #include "SVGStopElement.h"
 #include "SVGTransformList.h"
 #include "SVGTransformable.h"
diff --git a/WebCore/svg/SVGGradientElement.h b/WebCore/svg/SVGGradientElement.h
index 122e1d9..4c1f129 100644
--- a/WebCore/svg/SVGGradientElement.h
+++ b/WebCore/svg/SVGGradientElement.h
@@ -23,7 +23,7 @@
 
 #if ENABLE(SVG)
 #include "RenderObject.h"
-#include "SVGPaintServerGradient.h"
+#include "RenderSVGResourceGradient.h"
 #include "SVGExternalResourcesRequired.h"
 #include "SVGStyledElement.h"
 #include "SVGTransformList.h"
diff --git a/WebCore/svg/SVGLinearGradientElement.cpp b/WebCore/svg/SVGLinearGradientElement.cpp
index 665a1da..1b38ef6 100644
--- a/WebCore/svg/SVGLinearGradientElement.cpp
+++ b/WebCore/svg/SVGLinearGradientElement.cpp
@@ -29,9 +29,9 @@
 #include "FloatPoint.h"
 #include "LinearGradientAttributes.h"
 #include "MappedAttribute.h"
+#include "RenderSVGResourceLinearGradient.h"
 #include "SVGLength.h"
 #include "SVGNames.h"
-#include "SVGPaintServerLinearGradient.h"
 #include "SVGTransform.h"
 #include "SVGTransformList.h"
 #include "SVGUnitTypes.h"
diff --git a/WebCore/svg/SVGPatternElement.cpp b/WebCore/svg/SVGPatternElement.cpp
index 7659afa5..26569c8 100644
--- a/WebCore/svg/SVGPatternElement.cpp
+++ b/WebCore/svg/SVGPatternElement.cpp
@@ -31,9 +31,9 @@
 #include "MappedAttribute.h"
 #include "PatternAttributes.h"
 #include "RenderSVGContainer.h"
+#include "RenderSVGResourcePattern.h"
 #include "SVGLength.h"
 #include "SVGNames.h"
-#include "SVGPaintServerPattern.h"
 #include "SVGRenderSupport.h"
 #include "SVGSVGElement.h"
 #include "SVGStyledTransformableElement.h"
diff --git a/WebCore/svg/SVGPatternElement.h b/WebCore/svg/SVGPatternElement.h
index fffbbca..40cf423 100644
--- a/WebCore/svg/SVGPatternElement.h
+++ b/WebCore/svg/SVGPatternElement.h
@@ -23,10 +23,10 @@
 
 #if ENABLE(SVG)
 #include "RenderObject.h"
+#include "RenderSVGResourcePattern.h"
 #include "SVGExternalResourcesRequired.h"
 #include "SVGFitToViewBox.h"
 #include "SVGLangSpace.h"
-#include "SVGPaintServerPattern.h"
 #include "SVGStyledElement.h"
 #include "SVGTests.h"
 #include "SVGTransformList.h"
diff --git a/WebCore/svg/SVGRadialGradientElement.cpp b/WebCore/svg/SVGRadialGradientElement.cpp
index b153c0f..a2e08c4 100644
--- a/WebCore/svg/SVGRadialGradientElement.cpp
+++ b/WebCore/svg/SVGRadialGradientElement.cpp
@@ -30,9 +30,9 @@
 #include "MappedAttribute.h"
 #include "RadialGradientAttributes.h"
 #include "RenderObject.h"
+#include "RenderSVGResourceRadialGradient.h"
 #include "SVGLength.h"
 #include "SVGNames.h"
-#include "SVGPaintServerRadialGradient.h"
 #include "SVGStopElement.h"
 #include "SVGTransform.h"
 #include "SVGTransformList.h"
diff --git a/WebCore/svg/graphics/SVGPaintServerGradient.h b/WebCore/svg/graphics/SVGPaintServerGradient.h
deleted file mode 100644
index 953b0d9..0000000
--- a/WebCore/svg/graphics/SVGPaintServerGradient.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
- *               2008 Eric Seidel <eric@webkit.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#ifndef SVGPaintServerGradient_h
-#define SVGPaintServerGradient_h
-
-#if ENABLE(SVG)
-
-#include "AffineTransform.h"
-#include "Color.h"
-#include "Gradient.h"
-#include "GraphicsContext.h"
-#include "SVGPaintServer.h"
-
-#include <wtf/RefCounted.h>
-#include <wtf/RefPtr.h>
-
-namespace WebCore {
-
-    class ImageBuffer;
-    class SVGGradientElement;
-
-    typedef std::pair<float, Color> SVGGradientStop;
-
-    class SVGPaintServerGradient : public SVGPaintServer {
-    public:
-        virtual ~SVGPaintServerGradient();
-
-        void setGradient(PassRefPtr<Gradient>);
-        Gradient* gradient() const;
-
-        // Gradient start and end points are percentages when used in boundingBox mode.
-        // For instance start point with value (0,0) is top-left and end point with
-        // value (100, 100) is bottom-right. BoundingBox mode is enabled by default.
-        bool boundingBoxMode() const;
-        void setBoundingBoxMode(bool mode = true);
-
-        AffineTransform gradientTransform() const;
-        void setGradientTransform(const AffineTransform&);
-
-        void setGradientStops(const Vector<SVGGradientStop>& stops) { m_stops = stops; }
-        const Vector<SVGGradientStop>& gradientStops() const { return m_stops; }
-
-        virtual TextStream& externalRepresentation(TextStream&) const;
-
-        virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
-        virtual void teardown(GraphicsContext*&, const RenderObject*, SVGPaintTargetType, bool isPaintingText) const;
-
-    protected:
-        SVGPaintServerGradient(const SVGGradientElement* owner);
-        
-    private:
-        Vector<SVGGradientStop> m_stops;
-        RefPtr<Gradient> m_gradient;
-        bool m_boundingBoxMode;
-        AffineTransform m_gradientTransform;
-        const SVGGradientElement* m_ownerElement;
-
-#if PLATFORM(CG)
-    public:
-        mutable GraphicsContext* m_savedContext;
-        mutable OwnPtr<ImageBuffer> m_imageBuffer;
-#endif
-    };
-
-    inline SVGGradientStop makeGradientStop(float offset, const Color& color)
-    {
-        return std::make_pair(offset, color);
-    }
-
-} // namespace WebCore
-
-#endif
-
-#endif // SVGPaintServerGradient_h
diff --git a/WebCore/svg/graphics/SVGPaintServerLinearGradient.h b/WebCore/svg/graphics/SVGPaintServerLinearGradient.h
deleted file mode 100644
index f0568c7..0000000
--- a/WebCore/svg/graphics/SVGPaintServerLinearGradient.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#ifndef SVGPaintServerLinearGradient_h
-#define SVGPaintServerLinearGradient_h
-
-#if ENABLE(SVG)
-
-#include "FloatPoint.h"
-#include "SVGPaintServerGradient.h"
-
-namespace WebCore {
-
-    class SVGPaintServerLinearGradient : public SVGPaintServerGradient {
-    public:
-        static PassRefPtr<SVGPaintServerLinearGradient> create(const SVGGradientElement* owner) { return adoptRef(new SVGPaintServerLinearGradient(owner)); }
-        virtual ~SVGPaintServerLinearGradient();
-
-        virtual SVGPaintServerType type() const { return LinearGradientPaintServer; }
-
-        FloatPoint gradientStart() const;
-        void setGradientStart(const FloatPoint&);
-
-        FloatPoint gradientEnd() const;
-        void setGradientEnd(const FloatPoint&);
-
-        virtual TextStream& externalRepresentation(TextStream&) const;
-
-    private:
-        SVGPaintServerLinearGradient(const SVGGradientElement* owner);
-
-        FloatPoint m_start;
-        FloatPoint m_end;
-    };
-
-} // namespace WebCore
-
-#endif
-
-#endif // SVGPaintServerLinearGradient_h
diff --git a/WebCore/svg/graphics/SVGPaintServerPattern.h b/WebCore/svg/graphics/SVGPaintServerPattern.h
deleted file mode 100644
index 3d3da49..0000000
--- a/WebCore/svg/graphics/SVGPaintServerPattern.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#ifndef SVGPaintServerPattern_h
-#define SVGPaintServerPattern_h
-
-#if ENABLE(SVG)
-
-#include "AffineTransform.h"
-#include "FloatRect.h"
-#include "Pattern.h"
-#include "SVGPaintServer.h"
-
-#include <memory>
-
-#include <wtf/OwnPtr.h>
-#include <wtf/PassOwnPtr.h>
-
-namespace WebCore {
-
-    class GraphicsContext;
-    class ImageBuffer;
-    class SVGPatternElement;
-
-    class SVGPaintServerPattern : public SVGPaintServer {
-    public:
-        static PassRefPtr<SVGPaintServerPattern> create(const SVGPatternElement* owner) { return adoptRef(new SVGPaintServerPattern(owner)); }
-
-        virtual ~SVGPaintServerPattern();
-
-        virtual SVGPaintServerType type() const { return PatternPaintServer; }
-
-        // Pattern boundaries
-        void setPatternBoundaries(const FloatRect&);
-        FloatRect patternBoundaries() const;
-
-        ImageBuffer* tile() const;
-        void setTile(PassOwnPtr<ImageBuffer>);
-
-        AffineTransform patternTransform() const;
-        void setPatternTransform(const AffineTransform&);
-
-        virtual TextStream& externalRepresentation(TextStream&) const;
-
-        virtual bool setup(GraphicsContext*&, const RenderObject*, const RenderStyle*, SVGPaintTargetType, bool isPaintingText) const;
-        virtual void teardown(GraphicsContext*&, const RenderObject*, SVGPaintTargetType, bool isPaintingText) const;
-
-    private:
-        SVGPaintServerPattern(const SVGPatternElement*);
-        
-        OwnPtr<ImageBuffer> m_tile;
-        const SVGPatternElement* m_ownerElement;
-        AffineTransform m_patternTransform;
-        FloatRect m_patternBoundaries;
-
-        mutable RefPtr<Pattern> m_pattern;
-    };
-
-} // namespace WebCore
-
-#endif
-
-#endif // SVGPaintServerPattern_h
diff --git a/WebCore/svg/graphics/SVGPaintServerRadialGradient.h b/WebCore/svg/graphics/SVGPaintServerRadialGradient.h
deleted file mode 100644
index 749ba080..0000000
--- a/WebCore/svg/graphics/SVGPaintServerRadialGradient.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
- */
-
-#ifndef SVGPaintServerRadialGradient_h
-#define SVGPaintServerRadialGradient_h
-
-#if ENABLE(SVG)
-
-#include "FloatPoint.h"
-#include "SVGPaintServerGradient.h"
-
-namespace WebCore {
-
-    class SVGPaintServerRadialGradient : public SVGPaintServerGradient {
-    public:
-        static PassRefPtr<SVGPaintServerRadialGradient> create(const SVGGradientElement* owner) { return adoptRef(new SVGPaintServerRadialGradient(owner)); }
-        virtual ~SVGPaintServerRadialGradient();
-
-        virtual SVGPaintServerType type() const { return RadialGradientPaintServer; }
-
-        FloatPoint gradientCenter() const;
-        void setGradientCenter(const FloatPoint&);
-
-        FloatPoint gradientFocal() const;
-        void setGradientFocal(const FloatPoint&);
-
-        float gradientRadius() const;
-        void setGradientRadius(float);
-
-        virtual TextStream& externalRepresentation(TextStream&) const;
-
-    private:
-        SVGPaintServerRadialGradient(const SVGGradientElement* owner);
-
-        float m_radius;
-        FloatPoint m_center;
-        FloatPoint m_focal;
-    };
-
-} // namespace WebCore
-
-#endif
-
-#endif // SVGPaintServerRadialGradient_h
diff --git a/WebCore/svg/graphics/SVGResourceListener.h b/WebCore/svg/graphics/SVGResourceListener.h
deleted file mode 100644
index e69de29..0000000
--- a/WebCore/svg/graphics/SVGResourceListener.h
+++ /dev/null