Etterna 0.74.4
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
ThemeManager Class Reference

Manages theme paths and metrics. More...

#include <ThemeManager.h>

Collaboration diagram for ThemeManager:
Collaboration graph
[legend]

Classes

struct  PathInfo
 

Public Member Functions

void GetThemeNames (std::vector< std::string > &AddTo)
 
void GetSelectableThemeNames (std::vector< std::string > &AddTo)
 
auto GetNumSelectableThemes () -> int
 
auto DoesThemeExist (const std::string &sThemeName) -> bool
 
auto IsThemeSelectable (std::string const &name) -> bool
 
auto IsThemeNameValid (std::string const &name) -> bool
 
auto GetThemeDisplayName (const std::string &sThemeName) -> std::string
 
auto GetThemeAuthor (const std::string &sThemeName) -> std::string
 
void GetLanguages (std::vector< std::string > &AddTo)
 
auto DoesLanguageExist (const std::string &sLanguage) -> bool
 
void SwitchThemeAndLanguage (const std::string &sThemeName, const std::string &sLanguage, bool bPseudoLocalize, bool bForceThemeReload=false)
 
void UpdateLuaGlobals ()
 
auto GetCurThemeName () const -> std::string
 
auto GetRealCurThemeName () const -> std::string
 
auto IsThemeLoaded () const -> bool
 
auto GetCurLanguage () const -> std::string
 
auto GetCurThemeDir () const -> std::string
 
auto GetNextTheme () -> std::string
 
auto GetNextSelectableTheme () -> std::string
 
void ReloadMetrics ()
 
void ReloadSubscribers ()
 
void ClearSubscribers ()
 
void GetOptionNames (std::vector< std::string > &AddTo)
 
auto GetPathInfo (PathInfo &out, ElementCategory category, const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> bool
 
auto GetPath (ElementCategory category, const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> std::string
 
auto GetPathB (const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> std::string
 
auto GetPathF (const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> std::string
 
auto GetPathG (const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> std::string
 
auto GetPathS (const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> std::string
 
auto GetPathO (const std::string &sMetricsGroup, const std::string &sElement, bool bOptional=false) -> std::string
 
void ClearThemePathCache ()
 
auto HasMetric (const std::string &sMetricsGroup, const std::string &sValueName) -> bool
 
void PushMetric (Lua *L, const std::string &sMetricsGroup, const std::string &sValueName)
 
auto GetMetric (const std::string &sMetricsGroup, const std::string &sValueName) -> std::string
 
auto GetMetricI (const std::string &sMetricsGroup, const std::string &sValueName) -> int
 
auto GetMetricF (const std::string &sMetricsGroup, const std::string &sValueName) -> float
 
auto GetMetricB (const std::string &sMetricsGroup, const std::string &sValueName) -> bool
 
auto GetMetricC (const std::string &sMetricsGroup, const std::string &sValueName) -> RageColor
 
auto GetMetricR (const std::string &sMetricsGroup, const std::string &sValueName) -> LuaReference
 
auto GetMetricA (const std::string &sMetricsGroup, const std::string &sValueName) -> apActorCommands
 
void GetMetric (const std::string &sMetricsGroup, const std::string &sValueName, LuaReference &valueOut)
 
auto HasString (const std::string &sMetricsGroup, const std::string &sValueName) -> bool
 
auto GetString (const std::string &sMetricsGroup, const std::string &sValueName) -> std::string
 
void GetString (const std::string &sMetricsGroup, const std::string &sValueName, std::string &valueOut)
 
void FilterFileLanguages (std::vector< std::string > &asElementPaths)
 
void GetMetricsThatBeginWith (const std::string &sMetricsGroup, const std::string &sValueName, std::set< std::string > &vsValueNamesOut)
 
auto GetMetricsGroupFallback (const std::string &sMetricsGroup) -> std::string
 
void RunLuaScripts (const std::string &sMask, bool bUseThemeDir=false)
 
void PushSelf (lua_State *L)
 

Static Public Member Functions

static void EvaluateString (std::string &sText)
 
static auto GetBlankGraphicPath () -> std::string
 
static void Subscribe (IThemeMetric *p)
 
static void Unsubscribe (IThemeMetric *p)
 

Protected Member Functions

void LoadThemeMetrics (const std::string &sThemeName, const std::string &sLanguage_)
 
auto GetMetricRaw (const IniFile &ini, const std::string &sMetricsGroup, const std::string &sValueName) -> std::string
 
auto GetMetricRawRecursive (const IniFile &ini, const std::string &sMetricsGroup, const std::string &sValueName, std::string &sRet) -> bool
 
auto GetPathInfoToAndFallback (PathInfo &out, ElementCategory category, const std::string &sMetricsGroup, const std::string &sFile) -> bool
 
auto GetPathInfoToRaw (PathInfo &out, const std::string &sThemeName, ElementCategory category, const std::string &sMetricsGroup, const std::string &sFile) -> bool
 
auto GetElementDir (const std::string &sThemeName) -> std::string
 
void GetOptionalLanguageIniPaths (std::vector< std::string > &vsPathsOut, const std::string &sThemeName, const std::string &sLanguage)
 
auto GetDefaultLanguage () -> std::string
 

Static Protected Member Functions

static auto GetThemeDirFromName (const std::string &sThemeName) -> std::string
 
static auto GetMetricsIniPath (const std::string &sThemeName) -> std::string
 
static void GetLanguagesForTheme (const std::string &sThemeName, std::vector< std::string > &asLanguagesOut)
 
static auto GetLanguageIniPath (const std::string &sThemeName, const std::string &sLanguage) -> std::string
 

Protected Attributes

std::string m_sCurThemeName
 
std::string m_sRealCurThemeName = ""
 
std::string m_sCurLanguage
 
bool m_bPseudoLocalize
 

Detailed Description

Manages theme paths and metrics.


The documentation for this class was generated from the following files: