| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2003 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. | 3 * Copyright (C) 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. |
| 4 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 5 * Copyright (C) 2009 - 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserve
d. | 5 * Copyright (C) 2009 - 2010 Torch Mobile (Beijing) Co. Ltd. All rights reserve
d. |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| 11 * | 11 * |
| 12 * This library is distributed in the hope that it will be useful, | 12 * This library is distributed in the hope that it will be useful, |
| 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 15 * Library General Public License for more details. | 15 * Library General Public License for more details. |
| 16 * | 16 * |
| 17 * You should have received a copy of the GNU Library General Public License | 17 * You should have received a copy of the GNU Library General Public License |
| 18 * along with this library; see the file COPYING.LIB. If not, write to | 18 * along with this library; see the file COPYING.LIB. If not, write to |
| 19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 19 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
| 20 * Boston, MA 02110-1301, USA. | 20 * Boston, MA 02110-1301, USA. |
| 21 */ | 21 */ |
| 22 | 22 |
| 23 #ifndef CSSPropertyParser_h | 23 #ifndef CSSPropertyParser_h |
| 24 #define CSSPropertyParser_h | 24 #define CSSPropertyParser_h |
| 25 | 25 |
| 26 #include "core/css/CSSColorValue.h" | 26 #include "core/css/CSSColorValue.h" |
| 27 #include "core/css/CSSGradientValue.h" | 27 #include "core/css/CSSGradientValue.h" |
| 28 #include "core/css/CSSGridTemplateAreasValue.h" | 28 #include "core/css/CSSGridTemplateAreasValue.h" |
| 29 #include "core/css/CSSImageValue.h" |
| 29 #include "core/css/CSSPropertySourceData.h" | 30 #include "core/css/CSSPropertySourceData.h" |
| 30 #include "core/css/parser/CSSParserTokenRange.h" | 31 #include "core/css/parser/CSSParserTokenRange.h" |
| 31 #include "platform/Length.h" | 32 #include "platform/Length.h" |
| 32 | 33 |
| 33 namespace blink { | 34 namespace blink { |
| 34 | 35 |
| 35 class BorderImageParseContext; | 36 class BorderImageParseContext; |
| 36 class CSSBorderImageSliceValue; | 37 class CSSBorderImageSliceValue; |
| 37 class CSSBasicShapeValue; | 38 class CSSBasicShapeValue; |
| 38 class CSSBasicShapeEllipseValue; | 39 class CSSBasicShapeEllipseValue; |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 147 | 148 |
| 148 void addFillValue(RefPtrWillBeRawPtr<CSSValue>& lval, PassRefPtrWillBeRawPtr
<CSSValue> rval); | 149 void addFillValue(RefPtrWillBeRawPtr<CSSValue>& lval, PassRefPtrWillBeRawPtr
<CSSValue> rval); |
| 149 | 150 |
| 150 bool parseCubicBezierTimingFunctionValue(CSSParserValueList*& args, double&
result); | 151 bool parseCubicBezierTimingFunctionValue(CSSParserValueList*& args, double&
result); |
| 151 | 152 |
| 152 // Legacy parsing allows <string>s for animation-name | 153 // Legacy parsing allows <string>s for animation-name |
| 153 bool consumeAnimationShorthand(const StylePropertyShorthand&, bool useLegacy
Parsing, bool important); | 154 bool consumeAnimationShorthand(const StylePropertyShorthand&, bool useLegacy
Parsing, bool important); |
| 154 | 155 |
| 155 bool consumeColumns(bool important); | 156 bool consumeColumns(bool important); |
| 156 | 157 |
| 158 PassRefPtrWillBeRawPtr<CSSValue> consumeCursor(CSSParserTokenRange&); |
| 159 |
| 157 PassRefPtrWillBeRawPtr<CSSValue> parseGridPosition(); | 160 PassRefPtrWillBeRawPtr<CSSValue> parseGridPosition(); |
| 158 bool parseIntegerOrCustomIdentFromGridPosition(RefPtrWillBeRawPtr<CSSPrimiti
veValue>& numericValue, RefPtrWillBeRawPtr<CSSCustomIdentValue>& gridLineName); | 161 bool parseIntegerOrCustomIdentFromGridPosition(RefPtrWillBeRawPtr<CSSPrimiti
veValue>& numericValue, RefPtrWillBeRawPtr<CSSCustomIdentValue>& gridLineName); |
| 159 bool parseGridItemPositionShorthand(CSSPropertyID, bool important); | 162 bool parseGridItemPositionShorthand(CSSPropertyID, bool important); |
| 160 bool parseGridTemplateRowsAndAreas(PassRefPtrWillBeRawPtr<CSSValue>, bool im
portant); | 163 bool parseGridTemplateRowsAndAreas(PassRefPtrWillBeRawPtr<CSSValue>, bool im
portant); |
| 161 bool parseGridTemplateShorthand(bool important); | 164 bool parseGridTemplateShorthand(bool important); |
| 162 bool parseGridShorthand(bool important); | 165 bool parseGridShorthand(bool important); |
| 163 bool parseGridAreaShorthand(bool important); | 166 bool parseGridAreaShorthand(bool important); |
| 164 bool parseGridGapShorthand(bool important); | 167 bool parseGridGapShorthand(bool important); |
| 165 bool parseSingleGridAreaLonghand(RefPtrWillBeRawPtr<CSSValue>&); | 168 bool parseSingleGridAreaLonghand(RefPtrWillBeRawPtr<CSSValue>&); |
| 166 PassRefPtrWillBeRawPtr<CSSValue> parseGridTrackList(); | 169 PassRefPtrWillBeRawPtr<CSSValue> parseGridTrackList(); |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 220 bool parseDeprecatedGradient(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValu
e>&); | 223 bool parseDeprecatedGradient(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValu
e>&); |
| 221 bool parseDeprecatedLinearGradient(CSSParserValueList*, RefPtrWillBeRawPtr<C
SSValue>&, CSSGradientRepeat repeating); | 224 bool parseDeprecatedLinearGradient(CSSParserValueList*, RefPtrWillBeRawPtr<C
SSValue>&, CSSGradientRepeat repeating); |
| 222 bool parseDeprecatedRadialGradient(CSSParserValueList*, RefPtrWillBeRawPtr<C
SSValue>&, CSSGradientRepeat repeating); | 225 bool parseDeprecatedRadialGradient(CSSParserValueList*, RefPtrWillBeRawPtr<C
SSValue>&, CSSGradientRepeat repeating); |
| 223 bool parseLinearGradient(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&,
CSSGradientRepeat repeating); | 226 bool parseLinearGradient(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&,
CSSGradientRepeat repeating); |
| 224 bool parseRadialGradient(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&,
CSSGradientRepeat repeating); | 227 bool parseRadialGradient(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&,
CSSGradientRepeat repeating); |
| 225 bool parseGradientColorStops(CSSParserValueList*, CSSGradientValue*, bool ex
pectComma); | 228 bool parseGradientColorStops(CSSParserValueList*, CSSGradientValue*, bool ex
pectComma); |
| 226 | 229 |
| 227 bool parseCrossfade(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&); | 230 bool parseCrossfade(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&); |
| 228 | 231 |
| 229 PassRefPtrWillBeRawPtr<CSSValue> parseImageSet(CSSParserValueList*); | 232 PassRefPtrWillBeRawPtr<CSSValue> parseImageSet(CSSParserValueList*); |
| 233 PassRefPtrWillBeRawPtr<CSSValue> consumeImageSet(CSSParserTokenRange&); |
| 230 | 234 |
| 231 PassRefPtrWillBeRawPtr<CSSValueList> parseFilter(); | 235 PassRefPtrWillBeRawPtr<CSSValueList> parseFilter(); |
| 232 PassRefPtrWillBeRawPtr<CSSFunctionValue> parseBuiltinFilterArguments(CSSPars
erValueList*, CSSValueID); | 236 PassRefPtrWillBeRawPtr<CSSFunctionValue> parseBuiltinFilterArguments(CSSPars
erValueList*, CSSValueID); |
| 233 | 237 |
| 234 PassRefPtrWillBeRawPtr<CSSValueList> parseTransformOrigin(); | 238 PassRefPtrWillBeRawPtr<CSSValueList> parseTransformOrigin(); |
| 235 | 239 |
| 236 bool parseCalculation(CSSParserValue*, ValueRange); | 240 bool parseCalculation(CSSParserValue*, ValueRange); |
| 237 | 241 |
| 238 bool parseGeneratedImage(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&)
; | 242 bool parseGeneratedImage(CSSParserValueList*, RefPtrWillBeRawPtr<CSSValue>&)
; |
| 239 | 243 |
| 240 PassRefPtrWillBeRawPtr<CSSPrimitiveValue> createPrimitiveNumericValue(CSSPar
serValue*); | 244 PassRefPtrWillBeRawPtr<CSSPrimitiveValue> createPrimitiveNumericValue(CSSPar
serValue*); |
| 241 PassRefPtrWillBeRawPtr<CSSStringValue> createPrimitiveStringValue(CSSParserV
alue*); | 245 PassRefPtrWillBeRawPtr<CSSStringValue> createPrimitiveStringValue(CSSParserV
alue*); |
| 242 PassRefPtrWillBeRawPtr<CSSCustomIdentValue> createPrimitiveCustomIdentValue(
CSSParserValue*); | 246 PassRefPtrWillBeRawPtr<CSSCustomIdentValue> createPrimitiveCustomIdentValue(
CSSParserValue*); |
| 243 | 247 |
| 244 PassRefPtrWillBeRawPtr<CSSValue> createCSSImageValueWithReferrer(const Atomi
cString& rawValue, const KURL&); | 248 // TODO(rwlbuis): move to CSSPropertyParser.cpp once CSSParserToken conversi
on is done. |
| 249 inline PassRefPtrWillBeRawPtr<CSSValue> createCSSImageValueWithReferrer(cons
t AtomicString& rawValue, const KURL& url) |
| 250 { |
| 251 RefPtrWillBeRawPtr<CSSValue> imageValue = CSSImageValue::create(rawValue
, url); |
| 252 toCSSImageValue(imageValue.get())->setReferrer(m_context.referrer()); |
| 253 return imageValue; |
| 254 } |
| 245 | 255 |
| 246 PassRefPtrWillBeRawPtr<CSSBasicShapeInsetValue> parseInsetRoundedCorners(Pas
sRefPtrWillBeRawPtr<CSSBasicShapeInsetValue>, CSSParserValueList*); | 256 PassRefPtrWillBeRawPtr<CSSBasicShapeInsetValue> parseInsetRoundedCorners(Pas
sRefPtrWillBeRawPtr<CSSBasicShapeInsetValue>, CSSParserValueList*); |
| 247 | 257 |
| 248 PassRefPtrWillBeRawPtr<CSSValue> consumeFontFaceSrcURI(); | 258 PassRefPtrWillBeRawPtr<CSSValue> consumeFontFaceSrcURI(); |
| 249 PassRefPtrWillBeRawPtr<CSSValue> consumeFontFaceSrcLocal(); | 259 PassRefPtrWillBeRawPtr<CSSValue> consumeFontFaceSrcLocal(); |
| 250 | 260 |
| 251 class ImplicitScope { | 261 class ImplicitScope { |
| 252 STACK_ALLOCATED(); | 262 STACK_ALLOCATED(); |
| 253 WTF_MAKE_NONCOPYABLE(ImplicitScope); | 263 WTF_MAKE_NONCOPYABLE(ImplicitScope); |
| 254 public: | 264 public: |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 332 bool m_implicitShorthand; | 342 bool m_implicitShorthand; |
| 333 RefPtrWillBeMember<CSSCalcValue> m_parsedCalculation; | 343 RefPtrWillBeMember<CSSCalcValue> m_parsedCalculation; |
| 334 }; | 344 }; |
| 335 | 345 |
| 336 CSSPropertyID unresolvedCSSPropertyID(const CSSParserString&); | 346 CSSPropertyID unresolvedCSSPropertyID(const CSSParserString&); |
| 337 CSSValueID cssValueKeywordID(const CSSParserString&); | 347 CSSValueID cssValueKeywordID(const CSSParserString&); |
| 338 | 348 |
| 339 } // namespace blink | 349 } // namespace blink |
| 340 | 350 |
| 341 #endif // CSSPropertyParser_h | 351 #endif // CSSPropertyParser_h |
| OLD | NEW |