7#ifndef CORE_FXCRT_CSS_CFX_CSSSTYLESELECTOR_H_
8#define CORE_FXCRT_CSS_CFX_CSSSTYLESELECTOR_H_
15#include "core/fxcrt/css/cfx_css.h"
16#include "core/fxcrt/css/cfx_cssrulecollection.h"
17#include "core/fxcrt/css/cfx_cssvalue.h"
18#include "core/fxcrt/mask.h"
19#include "core/fxcrt/retain_ptr.h"
21class CFX_CSSComputedStyle;
27class CFX_CSSValueList;
39 const CFX_CSSComputedStyle* pParentStyle);
44 void ComputeStyle(
const std::vector<
const CFX_CSSDeclaration*>& declArray,
47 CFX_CSSComputedStyle* pDestStyle);
56 void ApplyDeclarations(
57 const std::vector<
const CFX_CSSDeclaration*>& declArray,
59 CFX_CSSComputedStyle* pDestStyle);
62 CFX_CSSComputedStyle* pComputedStyle);
64 std::vector<
const CFX_CSSPropertyHolder*>* importants,
65 std::vector<
const CFX_CSSPropertyHolder*>* normals,
66 std::vector<
const CFX_CSSCustomProperty*>* custom);
79 const RetainPtr<CFX_CSSValueList>& pList);
82 float m_fDefaultFontSize = 12.0f;
83 std::unique_ptr<CFX_CSSStyleSheet> m_UAStyles;
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
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)
#define UNSAFE_BUFFERS(...)
fxcrt::WideStringView WideStringView
CFX_CSSPropertyValue eName
CFX_CSSValueTypeMask dwTypes
fxcrt::WideString WideString