Package com.openhtmltopdf.css.newmatch
Class Matcher
- java.lang.Object
-
- com.openhtmltopdf.css.newmatch.Matcher
-
public class Matcher extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Matcher.AllDescendantMapper
(package private) class
Matcher.Mapper
Mapper represents a local CSS for a Node that is used to match the Node's children.
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<java.lang.Object>
_activeElements
private AttributeResolver
_attRes
private java.util.Set<java.lang.Object>
_focusElements
private java.util.List<FontFaceRule>
_fontFaceRules
private java.util.Set<java.lang.Object>
_hoverElements
private java.util.Map<java.lang.Object,Matcher.Mapper>
_map
private java.util.List<PageRule>
_pageRules
private StylesheetFactory
_styleFactory
private TreeResolver
_treeRes
private java.util.Set<java.lang.Object>
_visitElements
private Matcher.Mapper
docMapper
-
Constructor Summary
Constructors Constructor Description Matcher(TreeResolver tr, AttributeResolver ar, StylesheetFactory factory, java.util.List<Stylesheet> stylesheets, java.lang.String medium)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addAllStylesheets(java.util.List<Stylesheet> stylesheets, java.util.TreeMap<java.lang.String,Selector> sorter, java.lang.String medium)
(package private) Matcher.Mapper
createDocumentMapper(java.util.List<Stylesheet> stylesheets, java.lang.String medium)
CascadedStyle
getCascadedStyle(java.lang.Object e, boolean restyle)
java.lang.String
getCSSForAllDescendants(java.lang.Object e)
Returns CSS rulesets for descendants of e.private Ruleset
getElementStyle(java.lang.Object e)
java.util.List<FontFaceRule>
getFontFaceRules()
private Matcher.Mapper
getMapper(java.lang.Object e)
private Ruleset
getNonCssStyle(java.lang.Object e)
PageInfo
getPageCascadedStyle(java.lang.String pageName, java.lang.String pseudoPage)
CascadedStyle
getPECascadedStyle(java.lang.Object e, java.lang.String pseudoElement)
May return null.boolean
isActiveStyled(java.lang.Object e)
boolean
isFocusStyled(java.lang.Object e)
boolean
isHoverStyled(java.lang.Object e)
private static boolean
isNullOrEmpty(java.lang.String str)
boolean
isVisitedStyled(java.lang.Object e)
private void
link(java.lang.Object e, Matcher.Mapper m)
protected Matcher.Mapper
matchElement(java.lang.Object e)
-
-
-
Field Detail
-
docMapper
private final Matcher.Mapper docMapper
-
_attRes
private final AttributeResolver _attRes
-
_treeRes
private final TreeResolver _treeRes
-
_styleFactory
private final StylesheetFactory _styleFactory
-
_map
private final java.util.Map<java.lang.Object,Matcher.Mapper> _map
-
_hoverElements
private final java.util.Set<java.lang.Object> _hoverElements
-
_activeElements
private final java.util.Set<java.lang.Object> _activeElements
-
_focusElements
private final java.util.Set<java.lang.Object> _focusElements
-
_visitElements
private final java.util.Set<java.lang.Object> _visitElements
-
_pageRules
private final java.util.List<PageRule> _pageRules
-
_fontFaceRules
private final java.util.List<FontFaceRule> _fontFaceRules
-
-
Constructor Detail
-
Matcher
public Matcher(TreeResolver tr, AttributeResolver ar, StylesheetFactory factory, java.util.List<Stylesheet> stylesheets, java.lang.String medium)
-
-
Method Detail
-
getCascadedStyle
public CascadedStyle getCascadedStyle(java.lang.Object e, boolean restyle)
-
getCSSForAllDescendants
public java.lang.String getCSSForAllDescendants(java.lang.Object e)
Returns CSS rulesets for descendants of e. For example, if e is an svg element and we have the ruleset 'svg rect { .. }' then the string returned will be 'rect { .. }'. FIXME: Does not correctly handle sibling selectors.
-
getPECascadedStyle
public CascadedStyle getPECascadedStyle(java.lang.Object e, java.lang.String pseudoElement)
May return null. We assume that restyle has already been done by a getCascadedStyle if necessary.
-
getPageCascadedStyle
public PageInfo getPageCascadedStyle(java.lang.String pageName, java.lang.String pseudoPage)
-
getFontFaceRules
public java.util.List<FontFaceRule> getFontFaceRules()
-
isVisitedStyled
public boolean isVisitedStyled(java.lang.Object e)
-
isHoverStyled
public boolean isHoverStyled(java.lang.Object e)
-
isActiveStyled
public boolean isActiveStyled(java.lang.Object e)
-
isFocusStyled
public boolean isFocusStyled(java.lang.Object e)
-
matchElement
protected Matcher.Mapper matchElement(java.lang.Object e)
-
createDocumentMapper
Matcher.Mapper createDocumentMapper(java.util.List<Stylesheet> stylesheets, java.lang.String medium)
-
addAllStylesheets
private void addAllStylesheets(java.util.List<Stylesheet> stylesheets, java.util.TreeMap<java.lang.String,Selector> sorter, java.lang.String medium)
-
link
private void link(java.lang.Object e, Matcher.Mapper m)
-
getMapper
private Matcher.Mapper getMapper(java.lang.Object e)
-
isNullOrEmpty
private static boolean isNullOrEmpty(java.lang.String str)
-
getElementStyle
private Ruleset getElementStyle(java.lang.Object e)
-
getNonCssStyle
private Ruleset getNonCssStyle(java.lang.Object e)
-
-