Add 'filter' value to RenderStyle
authordino@apple.com <dino@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 27 Sep 2011 19:49:09 +0000 (19:49 +0000)
committerdino@apple.com <dino@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 27 Sep 2011 19:49:09 +0000 (19:49 +0000)
commit5a05ec18d8a4333dbba3d758c5e8376fefc48b44
treea18b1b100da6841d12ce2b4f726677bdcca50fc9
parent4b83315e1d0cd55c24aba2672347ea304dd80783
Add 'filter' value to RenderStyle
https://bugs.webkit.org/show_bug.cgi?id=68471

Reviewed by Simon Fraser.

Add a filter property to RenderStyle when ENABLE(CSS_FILTERS)
is turned on. Similar to -webkit-transform, -webkit-filter is a
list of FilterOperations, each identifying what type of operation
it is. This change simply adds the basic objects, it does not
parse the property to generate the list.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/filters/FilterOperation.h: Added.
(WebCore::FilterOperation::~FilterOperation):
(WebCore::FilterOperation::operator!=):
(WebCore::FilterOperation::getOperationType):
(WebCore::FilterOperation::isSameType):
(WebCore::FilterOperation::FilterOperation):
(WebCore::ReferenceFilterOperation::create):
(WebCore::ReferenceFilterOperation::reference):
(WebCore::ReferenceFilterOperation::operator==):
(WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
(WebCore::BasicColorMatrixFilterOperation::create):
(WebCore::BasicColorMatrixFilterOperation::amount):
(WebCore::BasicColorMatrixFilterOperation::operator==):
(WebCore::BasicColorMatrixFilterOperation::BasicColorMatrixFilterOperation):
(WebCore::BasicComponentTransferFilterOperation::create):
(WebCore::BasicComponentTransferFilterOperation::amount):
(WebCore::BasicComponentTransferFilterOperation::operator==):
(WebCore::BasicComponentTransferFilterOperation::BasicComponentTransferFilterOperation):
(WebCore::GammaFilterOperation::create):
(WebCore::GammaFilterOperation::amplitude):
(WebCore::GammaFilterOperation::exponent):
(WebCore::GammaFilterOperation::offset):
(WebCore::GammaFilterOperation::operator==):
(WebCore::GammaFilterOperation::GammaFilterOperation):
(WebCore::BlurFilterOperation::create):
(WebCore::BlurFilterOperation::stdDeviationX):
(WebCore::BlurFilterOperation::stdDeviationY):
(WebCore::BlurFilterOperation::operator==):
(WebCore::BlurFilterOperation::BlurFilterOperation):
(WebCore::SharpenFilterOperation::create):
(WebCore::SharpenFilterOperation::radius):
(WebCore::SharpenFilterOperation::threshold):
(WebCore::SharpenFilterOperation::amount):
(WebCore::SharpenFilterOperation::operator==):
(WebCore::SharpenFilterOperation::SharpenFilterOperation):
(WebCore::DropShadowFilterOperation::create):
(WebCore::DropShadowFilterOperation::shadow):
(WebCore::DropShadowFilterOperation::operator==):
(WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
* platform/graphics/filters/FilterOperations.cpp: Added.
(WebCore::FilterOperations::FilterOperations):
(WebCore::FilterOperations::operator==):
* platform/graphics/filters/FilterOperations.h: Added.
(WebCore::FilterOperations::operator!=):
(WebCore::FilterOperations::clear):
(WebCore::FilterOperations::operations):
(WebCore::FilterOperations::size):
(WebCore::FilterOperations::at):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::filter):
(WebCore::InheritedFlags::hasFilter):
(WebCore::InheritedFlags::setFilter):
(WebCore::InheritedFlags::initialFilter):
* rendering/style/StyleAllInOne.cpp: Added include of new StyleFilterData.
* rendering/style/StyleFilterData.cpp: Added.
(WebCore::StyleFilterData::StyleFilterData):
(WebCore::StyleFilterData::operator==):
* rendering/style/StyleFilterData.h: Added.
(WebCore::StyleFilterData::create):
(WebCore::StyleFilterData::copy):
(WebCore::StyleFilterData::operator!=):
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h: New filter DataRef.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96142 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed:
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.list.am
Source/WebCore/WebCore.gypi
Source/WebCore/WebCore.pro
Source/WebCore/WebCore.vcproj/WebCore.vcproj
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/platform/graphics/filters/FilterOperation.h [new file with mode: 0644]
Source/WebCore/platform/graphics/filters/FilterOperations.cpp [new file with mode: 0644]
Source/WebCore/platform/graphics/filters/FilterOperations.h [new file with mode: 0644]
Source/WebCore/rendering/style/RenderStyle.cpp
Source/WebCore/rendering/style/RenderStyle.h
Source/WebCore/rendering/style/StyleAllInOne.cpp
Source/WebCore/rendering/style/StyleFilterData.cpp [new file with mode: 0644]
Source/WebCore/rendering/style/StyleFilterData.h [new file with mode: 0644]
Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp
Source/WebCore/rendering/style/StyleRareNonInheritedData.h