7#ifndef CORE_FXCRT_CSS_CFX_CSSVALUELISTPARSER_H_
8#define CORE_FXCRT_CSS_CFX_CSSVALUELISTPARSER_H_
14#include "core/fxcrt/css/cfx_cssvalue.h"
15#include "core/fxcrt/widestring.h"
31 bool CharsRemain()
const {
return !m_Cur.IsEmpty(); }
34 void Advance() { m_Cur = m_Cur.Substr(1); }
37 wchar_t CurrentChar()
const {
return static_cast<
wchar_t>(m_Cur.Front()); }
39 size_t SkipToChar(
wchar_t wch);
40 size_t SkipToCharMatchingParens(
wchar_t wch);
static const Property * GetPropertyByEnum(CFX_CSSProperty property)
static const Color * GetColorByName(WideStringView wsName)
static const LengthUnit * GetLengthUnitByName(WideStringView wsName)
static const Property * GetPropertyByName(WideStringView name)
static const PropertyValue * GetPropertyValueByName(WideStringView wsName)
CFX_CSSNumber::Unit unit() const
CFX_CSSNumberValue(CFX_CSSNumber number)
float Apply(float percentBase) const
~CFX_CSSNumberValue() override
UnownedPtr< CFX_CSSDeclaration > const pDeclaration
Data(CFX_CSSSelector *pSel, CFX_CSSDeclaration *pDecl)
UnownedPtr< CFX_CSSSelector > const pSelector
const std::vector< std::unique_ptr< Data > > * GetTagRuleData(const WideString &tagname) const
void SetRulesFromSheet(const CFX_CSSStyleSheet *sheet)
void SetUAStyleSheet(std::unique_ptr< CFX_CSSStyleSheet > pSheet)
void ComputeStyle(const std::vector< const CFX_CSSDeclaration * > &declArray, const WideString &styleString, const WideString &alignString, CFX_CSSComputedStyle *pDestStyle)
void SetDefaultFontSize(float fFontSize)
RetainPtr< CFX_CSSComputedStyle > CreateComputedStyle(const CFX_CSSComputedStyle *pParentStyle)
std::vector< const CFX_CSSDeclaration * > MatchDeclarations(const WideString &tagname)
~CFX_CSSValueListParser()
CFX_CSSValueListParser(WideStringView list, wchar_t separator)
std::optional< Result > NextValue()
#define UNSAFE_BUFFERS(...)
fxcrt::WideStringView WideStringView
CFX_CSSPropertyValue eName
CFX_CSSValueTypeMask dwTypes
CFX_CSSValue::PrimitiveType type
WideStringView string_view
fxcrt::WideString WideString