class EE::UI::CSS::StyleSheet

#include <stylesheet.hpp>

class StyleSheet {
public:
    // methods

    void clear();
    void addStyle(std::shared_ptr<StyleSheetStyle> node);
    bool isEmpty() const;
    std::string print();
    void combineStyleSheet(const StyleSheet& styleSheet);
    std::shared_ptr<ElementDefinition> getElementStyles(UIWidget* element, const bool& applyPseudo = false) const;
    const std::vector<std::shared_ptr<StyleSheetStyle>>& getStyles() const;
    std::vector<std::shared_ptr<StyleSheetStyle>> getStylesFromSelector(const std::string& selector) const;
    std::shared_ptr<StyleSheetStyle> getStyleFromSelector(const std::string& selector, bool searchBySpecificity = false) const;
    bool updateMediaLists(const MediaFeatures& features);
    bool isMediaQueryListEmpty() const;
    StyleSheetStyleVector getStyleSheetStyleByAtRule(const AtRuleType& atRuleType) const;
    bool isKeyframesDefined(const std::string& keyframesName) const;
    const KeyframesDefinition& getKeyframesDefinition(const std::string& keyframesName) const;
    void addKeyframes(const KeyframesDefinition& keyframes);
    void addKeyframes(const KeyframesDefinitionMap& keyframesMap);
    const KeyframesDefinitionMap& getKeyframes() const;
    void invalidateCache();
    const Uint32& getMarker() const;
    void setMarker(const Uint32& marker);
    void removeAllWithMarker(const Uint32& marker);
    bool markerExists(const Uint32& marker) const;
    StyleSheet getAllWithMarker(const Uint32& marker) const;
    std::vector<std::shared_ptr<StyleSheetStyle>> findStyleFromSelectorName(const std::string& selector) const;
    bool refreshCacheFromStyles(const std::vector<std::shared_ptr<StyleSheetStyle>>& styles);
    const Uint64& getVersion() const;
    StyleSheet& operator=(const StyleSheet& other);
};