зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1370802: Clean up copy-pasta in GenericSpecifiedValues code. r=heycam
MozReview-Commit-ID: ABXfuSmLQRU --HG-- extra : rebase_source : 58b5b0aea23e362469a87e9592f8ebf9a8db5456
This commit is contained in:
Родитель
f6dc661b5b
Коммит
a8ea1db99e
|
@ -37,13 +37,9 @@ GenericSpecifiedValues::SetIdentStringValue(nsCSSPropertyID aId, const nsString&
|
|||
void
|
||||
GenericSpecifiedValues::SetIdentStringValueIfUnset(nsCSSPropertyID aId, const nsString& aValue)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetIdentStringValueIfUnset, (aId, aValue))
|
||||
}
|
||||
|
||||
void
|
||||
GenericSpecifiedValues::SetIdentAtomValueIfUnset(nsCSSPropertyID aId, nsIAtom* aValue)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetIdentAtomValueIfUnset, (aId, aValue))
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetIdentStringValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -52,6 +48,14 @@ GenericSpecifiedValues::SetIdentAtomValue(nsCSSPropertyID aId, nsIAtom* aValue)
|
|||
MOZ_STYLO_FORWARD(SetIdentAtomValue, (aId, aValue))
|
||||
}
|
||||
|
||||
void
|
||||
GenericSpecifiedValues::SetIdentAtomValueIfUnset(nsCSSPropertyID aId, nsIAtom* aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetIdentAtomValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
GenericSpecifiedValues::SetKeywordValue(nsCSSPropertyID aId, int32_t aValue)
|
||||
{
|
||||
|
@ -75,21 +79,9 @@ GenericSpecifiedValues::SetKeywordValue(nsCSSPropertyID aId, int32_t aValue)
|
|||
void
|
||||
GenericSpecifiedValues::SetKeywordValueIfUnset(nsCSSPropertyID aId, int32_t aValue)
|
||||
{
|
||||
// there are some static asserts in MOZ_STYLO_FORWARD which
|
||||
// won't work with the overloaded SetKeywordValue function,
|
||||
// so we copy its expansion and use SetIntValue for decltype
|
||||
// instead
|
||||
static_assert(!mozilla::IsSame<decltype(&MOZ_STYLO_THIS_TYPE::SetIntValue),
|
||||
decltype(&MOZ_STYLO_GECKO_TYPE::SetKeywordValueIfUnset)>
|
||||
::value, "Gecko subclass should define its own SetKeywordValueIfUnset");
|
||||
static_assert(!mozilla::IsSame<decltype(&MOZ_STYLO_THIS_TYPE::SetIntValue),
|
||||
decltype(&MOZ_STYLO_SERVO_TYPE::SetKeywordValueIfUnset)>
|
||||
::value, "Servo subclass should define its own SetKeywordValueIfUnset");
|
||||
|
||||
if (IsServo()) {
|
||||
return AsServo()->SetKeywordValueIfUnset(aId, aValue);
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetKeywordValue(aId, aValue);
|
||||
}
|
||||
return AsGecko()->SetKeywordValueIfUnset(aId, aValue);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -107,7 +99,9 @@ GenericSpecifiedValues::SetPixelValue(nsCSSPropertyID aId, float aValue)
|
|||
void
|
||||
GenericSpecifiedValues::SetPixelValueIfUnset(nsCSSPropertyID aId, float aValue)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetPixelValueIfUnset, (aId, aValue))
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetPixelValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -131,7 +125,9 @@ GenericSpecifiedValues::SetPercentValue(nsCSSPropertyID aId, float aValue)
|
|||
void
|
||||
GenericSpecifiedValues::SetPercentValueIfUnset(nsCSSPropertyID aId, float aValue)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetPercentValueIfUnset, (aId, aValue))
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetPercentValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -143,7 +139,9 @@ GenericSpecifiedValues::SetAutoValue(nsCSSPropertyID aId)
|
|||
void
|
||||
GenericSpecifiedValues::SetAutoValueIfUnset(nsCSSPropertyID aId)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetAutoValueIfUnset, (aId))
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetAutoValue(aId);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -155,7 +153,9 @@ GenericSpecifiedValues::SetCurrentColor(nsCSSPropertyID aId)
|
|||
void
|
||||
GenericSpecifiedValues::SetCurrentColorIfUnset(nsCSSPropertyID aId)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetCurrentColorIfUnset, (aId))
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetCurrentColor(aId);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -167,7 +167,9 @@ GenericSpecifiedValues::SetColorValue(nsCSSPropertyID aId, nscolor aValue)
|
|||
void
|
||||
GenericSpecifiedValues::SetColorValueIfUnset(nsCSSPropertyID aId, nscolor aValue)
|
||||
{
|
||||
MOZ_STYLO_FORWARD(SetColorValueIfUnset, (aId, aValue))
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetColorValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -28,42 +28,14 @@ public:
|
|||
|
||||
void SetIdentStringValue(nsCSSPropertyID aId, const nsString& aValue);
|
||||
|
||||
void SetIdentStringValueIfUnset(nsCSSPropertyID aId, const nsString& aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetIdentStringValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetIdentAtomValue(nsCSSPropertyID aId, nsIAtom* aValue);
|
||||
|
||||
void SetIdentAtomValueIfUnset(nsCSSPropertyID aId, nsIAtom* aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetIdentAtomValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetKeywordValue(nsCSSPropertyID aId, int32_t aValue);
|
||||
|
||||
void SetKeywordValueIfUnset(nsCSSPropertyID aId, int32_t aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetKeywordValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetIntValue(nsCSSPropertyID aId, int32_t aValue);
|
||||
|
||||
void SetPixelValue(nsCSSPropertyID aId, float aValue);
|
||||
|
||||
void SetPixelValueIfUnset(nsCSSPropertyID aId, float aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetPixelValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetLengthValue(nsCSSPropertyID aId, nsCSSValue aValue);
|
||||
|
||||
void SetNumberValue(nsCSSPropertyID aId, float aValue);
|
||||
|
@ -72,36 +44,10 @@ public:
|
|||
|
||||
void SetAutoValue(nsCSSPropertyID aId);
|
||||
|
||||
void SetAutoValueIfUnset(nsCSSPropertyID aId) {
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetAutoValue(aId);
|
||||
}
|
||||
}
|
||||
|
||||
void SetPercentValueIfUnset(nsCSSPropertyID aId, float aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetPercentValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetCurrentColor(nsCSSPropertyID aId);
|
||||
|
||||
void SetCurrentColorIfUnset(nsCSSPropertyID aId) {
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetCurrentColor(aId);
|
||||
}
|
||||
}
|
||||
|
||||
void SetColorValue(nsCSSPropertyID aId, nscolor aValue);
|
||||
|
||||
void SetColorValueIfUnset(nsCSSPropertyID aId, nscolor aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetColorValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetFontFamily(const nsString& aValue);
|
||||
void SetTextDecorationColorOverride();
|
||||
void SetBackgroundImage(nsAttrValue& aValue);
|
||||
|
|
|
@ -129,38 +129,17 @@ struct nsRuleData final: mozilla::GenericSpecifiedValues
|
|||
ValueFor(aId)->SetStringValue(aValue, eCSSUnit_Ident);
|
||||
}
|
||||
|
||||
void SetIdentStringValueIfUnset(nsCSSPropertyID aId, const nsString& aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetIdentStringValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetIdentAtomValue(nsCSSPropertyID aId, nsIAtom* aValue)
|
||||
{
|
||||
nsCOMPtr<nsIAtom> atom = aValue;
|
||||
ValueFor(aId)->SetAtomIdentValue(atom.forget());
|
||||
}
|
||||
|
||||
void SetIdentAtomValueIfUnset(nsCSSPropertyID aId, nsIAtom* aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetIdentAtomValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetKeywordValue(nsCSSPropertyID aId, int32_t aValue)
|
||||
{
|
||||
ValueFor(aId)->SetIntValue(aValue, eCSSUnit_Enumerated);
|
||||
}
|
||||
|
||||
void SetKeywordValueIfUnset(nsCSSPropertyID aId, int32_t aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetKeywordValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetIntValue(nsCSSPropertyID aId, int32_t aValue)
|
||||
{
|
||||
ValueFor(aId)->SetIntValue(aValue, eCSSUnit_Integer);
|
||||
|
@ -171,13 +150,6 @@ struct nsRuleData final: mozilla::GenericSpecifiedValues
|
|||
ValueFor(aId)->SetFloatValue(aValue, eCSSUnit_Pixel);
|
||||
}
|
||||
|
||||
void SetPixelValueIfUnset(nsCSSPropertyID aId, float aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetPixelValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetLengthValue(nsCSSPropertyID aId, nsCSSValue aValue)
|
||||
{
|
||||
nsCSSValue* val = ValueFor(aId);
|
||||
|
@ -198,41 +170,15 @@ struct nsRuleData final: mozilla::GenericSpecifiedValues
|
|||
ValueFor(aId)->SetAutoValue();
|
||||
}
|
||||
|
||||
void SetAutoValueIfUnset(nsCSSPropertyID aId) {
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetAutoValue(aId);
|
||||
}
|
||||
}
|
||||
|
||||
void SetPercentValueIfUnset(nsCSSPropertyID aId, float aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetPercentValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetCurrentColor(nsCSSPropertyID aId) {
|
||||
ValueFor(aId)->SetIntValue(NS_COLOR_CURRENTCOLOR, eCSSUnit_EnumColor);
|
||||
}
|
||||
|
||||
void SetCurrentColorIfUnset(nsCSSPropertyID aId) {
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetCurrentColor(aId);
|
||||
}
|
||||
}
|
||||
|
||||
void SetColorValue(nsCSSPropertyID aId, nscolor aValue)
|
||||
{
|
||||
ValueFor(aId)->SetColorValue(aValue);
|
||||
}
|
||||
|
||||
void SetColorValueIfUnset(nsCSSPropertyID aId, nscolor aValue)
|
||||
{
|
||||
if (!PropertyIsSet(aId)) {
|
||||
SetColorValue(aId, aValue);
|
||||
}
|
||||
}
|
||||
|
||||
void SetFontFamily(const nsString& aValue);
|
||||
void SetTextDecorationColorOverride();
|
||||
void SetBackgroundImage(nsAttrValue& aValue);
|
||||
|
|
Загрузка…
Ссылка в новой задаче