static void init_styles(BudgiePanel *self) { GtkCssProvider *css_provider; GFile *file = NULL; GdkScreen *screen; screen = gdk_screen_get_default(); /* Fallback */ css_provider = gtk_css_provider_new(); file = g_file_new_for_uri("resource://com/evolve-os/budgie/panel/style.css"); if (gtk_css_provider_load_from_file(css_provider, file, NULL)) { gtk_style_context_add_provider_for_screen(screen, GTK_STYLE_PROVIDER(css_provider), GTK_STYLE_PROVIDER_PRIORITY_FALLBACK); } g_object_unref(css_provider); g_object_unref(file); /* Forced */ css_provider = gtk_css_provider_new(); file = g_file_new_for_uri("resource://com/evolve-os/budgie/panel/app.css"); if (gtk_css_provider_load_from_file(css_provider, file, NULL)) { gtk_style_context_add_provider_for_screen(screen, GTK_STYLE_PROVIDER(css_provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); } g_object_unref(css_provider); g_object_unref(file); }
static gboolean load_css_from_resource (GApplication *application, GtkCssProvider *provider, gboolean theme) { const char *base_path; gs_free char *uri; gs_unref_object GFile *file; gs_free_error GError *error = NULL; base_path = g_application_get_resource_base_path (application); if (theme) { gs_free char *str, *theme_name; g_object_get (gtk_settings_get_default (), "gtk-theme-name", &str, NULL); theme_name = g_ascii_strdown (str, -1); uri = g_strdup_printf ("resource://%s/css/%s/terminal.css", base_path, theme_name); } else { uri = g_strdup_printf ("resource://%s/css/terminal.css", base_path); } file = g_file_new_for_uri (uri); if (!g_file_query_exists (file, NULL /* cancellable */)) return FALSE; if (!gtk_css_provider_load_from_file (provider, file, &error)) g_assert_no_error (error); return TRUE; }
GtkWidget *factory_build_main_window() { GtkCssProvider *provider; GdkScreen *screen; GtkWidget *tabbar; GtkWidget *window; GtkWidget *scroll; GtkWidget *vbox; GtkWidget *ebox; /* load css and apply style */ provider = gtk_css_provider_new(); screen = gdk_screen_get_default(); gtk_css_provider_load_from_file(provider, g_file_new_for_path("style.css"), NULL); gtk_style_context_add_provider_for_screen(screen, GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_USER); /* setup elements */ tabbar = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); gtk_box_set_homogeneous(GTK_BOX(tabbar), true); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "awb"); gtk_window_set_resizable(GTK_WINDOW(window), false); scroll = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), GTK_POLICY_NEVER, GTK_POLICY_NEVER); vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); ebox = gtk_event_box_new(); /* link to gui struct */ awb.gui.tabbar = tabbar; awb.gui.window = window; awb.gui.scrollarea = scroll; awb.gui.inbox = ebox; GtkWidget *scrollarea = factory_build_history(); /* packing */ gtk_box_pack_start(GTK_BOX(vbox), tabbar, 0, 0, 0); gtk_box_pack_start(GTK_BOX(vbox), scroll, 1, 1, 0); gtk_box_pack_end(GTK_BOX(vbox), ebox, 0, 0, 0); gtk_box_pack_end(GTK_BOX(vbox), factory_build_inputbar(), 0, 0, 0); gtk_box_pack_end(GTK_BOX(vbox), scrollarea /*factory_build_history()*/, 0, 0, 0); gtk_box_pack_end(GTK_BOX(vbox), factory_build_statusbar(), 0, 0, 0); gtk_container_add(GTK_CONTAINER(window), vbox); awb_new_tab("about:blank"); gtk_widget_show_all(awb.gui.window); gtk_widget_set_visible(awb.gui.statusbar.ssl, false); gtk_widget_set_visible(awb.gui.inputbar.widget, false); gtk_widget_set_visible(awb.gui.tabbar, false); gtk_widget_set_visible(awb.gui.history, false); gtk_widget_set_visible(GTK_WIDGET(gtk_scrolled_window_get_vscrollbar(GTK_SCROLLED_WINDOW(scrollarea))), false); return window; }
void cc_set_css(GtkWidget*w,gchar*file) { GFile *cssfile=g_file_new_for_path(file); GtkCssProvider*provider=gtk_css_provider_new(); GtkStyleContext*context=gtk_widget_get_style_context(w); gtk_style_context_add_provider(context,GTK_STYLE_PROVIDER(provider),GTK_STYLE_PROVIDER_PRIORITY_USER); gtk_css_provider_load_from_file(GTK_CSS_PROVIDER(provider),cssfile,NULL); g_object_unref(provider); }
void cc_style_setup() { GtkCssProvider* provider=gtk_css_provider_new(); GdkScreen*screen=gdk_display_get_default_screen(gdk_display_get_default()); GFile* cssfile=g_file_new_for_path(STYLE_PATH "image.css"); gtk_css_provider_load_from_file(GTK_CSS_PROVIDER(provider),cssfile,NULL); gtk_style_context_add_provider_for_screen(screen,GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_USER); g_object_unref(provider); }
/* Set the color of a widget */ void set_app_style(struct elyapp *app, GtkWidget *widg) { TRACE(stdout, "%s", "Setting application style..."); /* No style defined */ if ( access(app->settings.style, F_OK) == -1 ) return; GtkStyleContext *context = gtk_widget_get_style_context(widg); GtkCssProvider *css = gtk_css_provider_new(); GFile *gfile = g_file_new_for_path(app->settings.style); gtk_css_provider_load_from_file(css, gfile, NULL); gtk_style_context_add_class(context, app->settings.class); gtk_style_context_add_provider(context, GTK_STYLE_PROVIDER(css), GTK_STYLE_PROVIDER_PRIORITY_USER); TRACE(stdout, "%s", "Done setting color."); }
static void style_window(GtkWidget *window, wconf_t conf) { GdkDisplay *display; GdkScreen *screen; GtkCssProvider *provider; GFile *file; GError *err; gtk_window_set_decorated(GTK_WINDOW(window), FALSE); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); gtk_window_set_default_size(GTK_WINDOW(window), SEARCH_WIDTH, SEARCH_HEIGHT); gtk_window_set_title(GTK_WINDOW(window), "Morun"); gtk_window_set_resizable(GTK_WINDOW(window), FALSE); char path[256]; if (conf.style == NULL) snprintf(path, sizeof(path), "%s/.morun.css", getenv("HOME")); else snprintf(path, sizeof(path), "%s", conf.style); file = g_file_new_for_path(path); provider = gtk_css_provider_new(); display = gdk_display_get_default(); screen = gdk_display_get_default_screen(display); err = NULL; gtk_style_context_add_provider_for_screen(screen, GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); gtk_css_provider_load_from_file(GTK_CSS_PROVIDER(provider), file, &err); if (err != NULL) { printf("Error occurred while loading style:\n%s\n", err->message); exit(1); } g_object_unref(provider); }
static void gtk_css_provider_load_from_resource (GtkCssProvider *css_provider, const gchar *resource_path) { GFile *file; gchar *uri, *escaped; g_return_if_fail (GTK_IS_CSS_PROVIDER (css_provider)); g_return_if_fail (resource_path != NULL); escaped = g_uri_escape_string (resource_path, G_URI_RESERVED_CHARS_ALLOWED_IN_PATH, FALSE); uri = g_strconcat ("resource://", escaped, NULL); g_free (escaped); file = g_file_new_for_uri (uri); g_free (uri); gtk_css_provider_load_from_file (css_provider, file, NULL); g_object_unref (file); }
static void add_style_from_resource (const char *resource) { GtkCssProvider *provider; GFile *file; char *uri; provider = gtk_css_provider_new (); uri = g_strconcat ("resource://", resource, NULL); file = g_file_new_for_uri (uri); if (!gtk_css_provider_load_from_file (provider, file, NULL)) goto out; gtk_style_context_add_provider_for_screen (gdk_screen_get_default (), GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); out: g_object_unref (file); g_free (uri); }
static GtkCssProvider * load_css_from_resource (const gchar *filename, gboolean required) { GError *error = NULL; GFile *css_file; GtkCssProvider *provider; gchar *resource_name; resource_name = g_strdup_printf ("resource:///org/gnome/gedit/css/%s", filename); css_file = g_file_new_for_uri (resource_name); g_free (resource_name); if (!required && !g_file_query_exists (css_file, NULL)) { g_object_unref (css_file); return NULL; } provider = gtk_css_provider_new (); if (gtk_css_provider_load_from_file (provider, css_file, &error)) { gtk_style_context_add_provider_for_screen (gdk_screen_get_default (), GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); } else { g_warning ("Could not load css provider: %s", error->message); g_error_free (error); } g_object_unref (css_file); return provider; }
static void css_setup (struct desktop *desktop) { GtkCssProvider *provider; GFile *file; GError *error = NULL; provider = gtk_css_provider_new (); file = g_file_new_for_uri ("resource:///org/raspberry-pi/maynard/style.css"); if (!gtk_css_provider_load_from_file (provider, file, &error)) { g_warning ("Failed to load CSS file: %s", error->message); g_clear_error (&error); g_object_unref (file); return; } gtk_style_context_add_provider_for_screen (gdk_screen_get_default (), GTK_STYLE_PROVIDER (provider), 600); g_object_unref (file); }