class EE::UI::UITheme

#include <uitheme.hpp>

class UITheme: protected EE::System::ResourceManagerMulti {
public:
    // construction

    virtual ~UITheme();

    // methods

    static UITheme* New(const std::string& name, const std::string& abbr, Graphics::Font* defaultFont = NULL);
    static UITheme* load(const std::string& name, const std::string& abbr, const std::string& textureAtlasPath, Graphics::Font* defaultFont, const std::string& styleSheetPath);
    static UITheme* loadFromTextureAtlas(UITheme* tTheme, Graphics::TextureAtlas* getTextureAtlas);
    static UITheme* loadFromTextureAtlas(Graphics::TextureAtlas* getTextureAtlas, const std::string& Name, const std::string& NameAbbr);
    static UITheme* loadFromDirectroy(UITheme* tTheme, const std::string& Path, const Float& pixelDensity = 1);
    static UITheme* loadFromDirectroy(const std::string& Path, const std::string& Name, const std::string& NameAbbr, const Float& pixelDensity = 1);
    const std::string& getName() const;
    void setName(const std::string& name);
    const String::HashType& getId() const;
    const std::string& getAbbr() const;
    virtual UISkin* add(UISkin* Resource);
    Graphics::TextureAtlas* getTextureAtlas() const;
    UIIcon* getIconByName(const std::string& name);
    UISkin* getSkin(const std::string& widgetName);
    Font* getDefaultFont() const;
    void setDefaultFont(Font* font);
    CSS::StyleSheet& getStyleSheet();
    const CSS::StyleSheet& getStyleSheet() const;
    void setStyleSheet(const CSS::StyleSheet& styleSheet);
    const Float& getDefaultFontSize() const;
    void setDefaultFontSize(const Float& defaultFontSize);
    UIIconTheme* getIconTheme() const;
    const std::string& getStyleSheetPath() const;
    void setStyleSheetPath(const std::string& styleSheetPath);
    bool reloadStyleSheet();
};

Inherited Members

public:
    // methods

    virtual T* add(T* resource);
    bool remove(T* resource, bool remove = true);
    bool removeById(const String::HashType& id, bool remove = true);
    bool removeByName(const std::string& name, bool remove = true);
    T* getByName(const std::string& name);
    T* getById(const String::HashType& id);
    Uint32 getCount();
    Uint32 getCount(const std::string& name);
    Uint32 getCount(const String::HashType& id);
    bool exists(const std::string& name);
    bool existsId(const String::HashType& id);
    void destroy();
    void printNames();
    std::unordered_multimap<String::HashType, T*>& getResources();
    const bool& isDestroying() const;