fixed backwards compatibility for toolbar/tab styles
This commit is contained in:
parent
54eda44f85
commit
a8d9f4fc45
1 changed files with 31 additions and 31 deletions
|
@ -29,14 +29,26 @@ IconbarTheme::IconbarTheme(int screen_num,
|
||||||
const std::string &name,
|
const std::string &name,
|
||||||
const std::string &altname):
|
const std::string &altname):
|
||||||
FbTk::Theme(screen_num),
|
FbTk::Theme(screen_num),
|
||||||
m_focused_texture(*this, name + ".focused", altname + ".Focused"),
|
m_focused_texture(*this,
|
||||||
m_unfocused_texture(*this, name + ".unfocused", altname + ".Unfocused"),
|
name + (name == "window.label" ? ".focus" : ".focused"),
|
||||||
|
altname + (name == "window.label" ? ".Focus" : ".Focused")),
|
||||||
|
m_unfocused_texture(*this,
|
||||||
|
name + (name == "window.label" ? ".unfocus" : ".unfocused"),
|
||||||
|
altname + (name == "window.label" ? ".Unfocus" : ".Unfocused")),
|
||||||
m_empty_texture(*this, name + ".empty", altname + ".Empty"),
|
m_empty_texture(*this, name + ".empty", altname + ".Empty"),
|
||||||
m_focused_border(*this, name + ".focused", altname + ".Focused"),
|
m_focused_border(*this,
|
||||||
m_unfocused_border(*this, name + ".unfocused", altname + ".Unfocused"),
|
name + (name == "window.label" ? ".focus" : ".focused"),
|
||||||
|
altname + (name == "window.label" ? ".Focus" : ".Focused")),
|
||||||
|
m_unfocused_border(*this,
|
||||||
|
name + (name == "window.label" ? ".unfocus" : ".unfocused"),
|
||||||
|
altname + (name == "window.label" ? ".Unfocus" : ".Unfocused")),
|
||||||
m_border(*this, name, altname),
|
m_border(*this, name, altname),
|
||||||
m_focused_text(*this, name + ".focused", altname + ".Focused"),
|
m_focused_text(*this,
|
||||||
m_unfocused_text(*this, name + ".unfocused", altname + ".Unfocused"),
|
name + (name == "window.label" ? ".focus" : ".focused"),
|
||||||
|
altname + (name == "window.label" ? ".Focus" : ".Focused")),
|
||||||
|
m_unfocused_text(*this,
|
||||||
|
name + (name == "window.label" ? ".unfocus" : ".unfocused"),
|
||||||
|
altname + (name == "window.label" ? ".Unfocus" : ".Unfocused")),
|
||||||
m_name(name), m_altname(altname) {
|
m_name(name), m_altname(altname) {
|
||||||
|
|
||||||
FbTk::ThemeManager::instance().loadTheme(*this);
|
FbTk::ThemeManager::instance().loadTheme(*this);
|
||||||
|
@ -56,54 +68,42 @@ void IconbarTheme::reconfigTheme() {
|
||||||
bool IconbarTheme::fallback(FbTk::ThemeItem_base &item) {
|
bool IconbarTheme::fallback(FbTk::ThemeItem_base &item) {
|
||||||
using namespace FbTk;
|
using namespace FbTk;
|
||||||
ThemeManager &tm = ThemeManager::instance();
|
ThemeManager &tm = ThemeManager::instance();
|
||||||
|
std::string focus = (m_name == "window.label" ? ".focus" : ".focused");
|
||||||
|
std::string un = (m_name == "window.label" ? ".unfocus" : ".unfocused");
|
||||||
|
|
||||||
// TODO: fix fallbacks for "focused" vs. "focus"
|
if (&m_focused_texture == &item || &m_unfocused_texture == &item) {
|
||||||
if (&m_focused_texture == &item) {
|
return tm.loadItem(item, "toolbar.windowLabel", "toolbar.windowLabel");
|
||||||
return (tm.loadItem(item, "window.label.focus", "Window.Label.Focus") ||
|
|
||||||
tm.loadItem(item, "toolbar.windowLabel", "toolbar.windowLabel"));
|
|
||||||
|
|
||||||
} else if (&m_unfocused_texture == &item) {
|
|
||||||
return (tm.loadItem(item, "window.label.unfocus",
|
|
||||||
"Window.Label.Unfocus") ||
|
|
||||||
tm.loadItem(item, "toolbar.windowLabel",
|
|
||||||
"toolbar.windowLabel"));
|
|
||||||
} else if (&m_empty_texture == &item) {
|
} else if (&m_empty_texture == &item) {
|
||||||
return (tm.loadItem(item, m_focused_texture.name(),
|
return (tm.loadItem(item, m_focused_texture.name(),
|
||||||
m_focused_texture.altName()) ||
|
m_focused_texture.altName()) ||
|
||||||
tm.loadItem(item, "toolbar.windowLabel", "toolbar.windowLabel")
|
tm.loadItem(item, "toolbar.windowLabel", "toolbar.windowLabel")
|
||||||
|| tm.loadItem(item, "toolbar", "toolbar"));
|
|| tm.loadItem(item, "toolbar", "toolbar"));
|
||||||
} else if (item.name() == m_name + ".focused.borderWidth" ||
|
} else if (item.name() == m_name + focus + ".borderWidth" ||
|
||||||
item.name() == m_name + ".unfocused.borderWidth")
|
item.name() == m_name + un + ".borderWidth")
|
||||||
// don't fallback for base border, for theme backwards compatibility
|
// don't fallback for base border, for theme backwards compatibility
|
||||||
return (tm.loadItem(item, m_name + ".borderWidth",
|
return (tm.loadItem(item, m_name + ".borderWidth",
|
||||||
m_altname + ".BorderWidth") ||
|
m_altname + ".BorderWidth") ||
|
||||||
tm.loadItem(item, "window.borderWidth", "Window.BorderWidth") ||
|
tm.loadItem(item, "window.borderWidth", "Window.BorderWidth") ||
|
||||||
tm.loadItem(item, "borderWidth", "BorderWidth"));
|
tm.loadItem(item, "borderWidth", "BorderWidth"));
|
||||||
|
|
||||||
else if (item.name() == m_name + ".focused.borderColor" ||
|
else if (item.name() == m_name + focus + ".borderColor" ||
|
||||||
item.name() == m_name + ".unfocused.borderColor")
|
item.name() == m_name + un + ".borderColor")
|
||||||
|
|
||||||
return (tm.loadItem(item, m_name + ".borderColor",
|
return (tm.loadItem(item, m_name + ".borderColor",
|
||||||
m_altname + ".BorderColor") ||
|
m_altname + ".BorderColor") ||
|
||||||
tm.loadItem(item, "window.borderColor", "Window.BorderColor") ||
|
tm.loadItem(item, "window.borderColor", "Window.BorderColor") ||
|
||||||
tm.loadItem(item, "borderColor", "BorderColor"));
|
tm.loadItem(item, "borderColor", "BorderColor"));
|
||||||
|
|
||||||
else if (item.name() == m_name + ".focused.font" ||
|
else if (item.name() == m_name + focus + ".font" ||
|
||||||
item.name() == m_name + ".unfocused.font")
|
item.name() == m_name + un + ".font")
|
||||||
|
|
||||||
return tm.loadItem(item, "window.font", "Window.Font");
|
return tm.loadItem(item, "window.font", "Window.Font");
|
||||||
|
|
||||||
else if (item.name() == m_name + ".focused.textColor") {
|
else if (item.name() == m_name + focus + ".justify" ||
|
||||||
|
item.name() == m_name + un + ".justify") {
|
||||||
return tm.loadItem(item, "window.label.focus.textColor", "Window.Label.Focus.TextColor");
|
|
||||||
|
|
||||||
} else if (item.name() == m_name + ".unfocused.textColor") {
|
|
||||||
return tm.loadItem(item, "window.label.unfocus.textColor", "Window.Label.Unfocus.TextColor");
|
|
||||||
} else if (item.name() == m_name + ".focused.justify" ||
|
|
||||||
item.name() == m_name + ".unfocused.justify") {
|
|
||||||
return (tm.loadItem(item, m_name + ".justify", m_altname + ".Justify")
|
return (tm.loadItem(item, m_name + ".justify", m_altname + ".Justify")
|
||||||
|| tm.loadItem(item, "window.justify", "Window.Justify"));
|
|| tm.loadItem(item, "window.justify", "Window.Justify"));
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue