GC from style utility function
git-svn-id: svn://localhost/ardour2/branches/3.0@4378 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
cdb391d1f1
commit
9d6d7f8b81
@ -384,6 +384,61 @@ color_from_style (string widget_style_name, int state, string attr)
|
|||||||
return Gdk::Color ("red");
|
return Gdk::Color ("red");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Glib::RefPtr<Gdk::GC>
|
||||||
|
gc_from_style (string widget_style_name, int state, string attr)
|
||||||
|
{
|
||||||
|
GtkStyle* style;
|
||||||
|
|
||||||
|
style = gtk_rc_get_style_by_paths (gtk_settings_get_default(),
|
||||||
|
widget_style_name.c_str(),
|
||||||
|
0, G_TYPE_NONE);
|
||||||
|
|
||||||
|
if (!style) {
|
||||||
|
error << string_compose (_("no style found for %1, using red"), style) << endmsg;
|
||||||
|
Glib::RefPtr<Gdk::GC> ret = Gdk::GC::create();
|
||||||
|
ret->set_rgb_fg_color(Gdk::Color("red"));
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "fg") {
|
||||||
|
return Glib::wrap(style->fg_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "bg") {
|
||||||
|
return Glib::wrap(style->bg_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "light") {
|
||||||
|
return Glib::wrap(style->light_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "dark") {
|
||||||
|
return Glib::wrap(style->dark_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "mid") {
|
||||||
|
return Glib::wrap(style->mid_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "text") {
|
||||||
|
return Glib::wrap(style->text_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "base") {
|
||||||
|
return Glib::wrap(style->base_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (attr == "text_aa") {
|
||||||
|
return Glib::wrap(style->text_aa_gc[state]);
|
||||||
|
}
|
||||||
|
|
||||||
|
error << string_compose (_("unknown style attribute %1 requested for color; using \"red\""), attr) << endmsg;
|
||||||
|
Glib::RefPtr<Gdk::GC> ret = Gdk::GC::create();
|
||||||
|
ret->set_rgb_fg_color(Gdk::Color("red"));
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool
|
bool
|
||||||
canvas_item_visible (ArdourCanvas::Item* item)
|
canvas_item_visible (ArdourCanvas::Item* item)
|
||||||
{
|
{
|
||||||
|
@ -68,6 +68,8 @@ Pango::FontDescription* get_font_for_style (std::string widgetname);
|
|||||||
uint32_t rgba_from_style (std::string, uint32_t, uint32_t, uint32_t, uint32_t, std::string = "fg", int = Gtk::STATE_NORMAL, bool = true);
|
uint32_t rgba_from_style (std::string, uint32_t, uint32_t, uint32_t, uint32_t, std::string = "fg", int = Gtk::STATE_NORMAL, bool = true);
|
||||||
|
|
||||||
Gdk::Color color_from_style (std::string widget_style_name, int state, std::string attr);
|
Gdk::Color color_from_style (std::string widget_style_name, int state, std::string attr);
|
||||||
|
Glib::RefPtr<Gdk::GC> gc_from_style (string widget_style_name, int state, string attr);
|
||||||
|
|
||||||
|
|
||||||
void decorate (Gtk::Window& w, Gdk::WMDecoration d);
|
void decorate (Gtk::Window& w, Gdk::WMDecoration d);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user