Gtk css

De drev
Aller à : navigation, rechercher

Name a widget in glade

Properties/common/Widget name

Sample

//gcc -Wall -o csswindow `pkg-config --cflags --libs gtk+-3.0` csswindow.c
#include <gtk/gtk.h>

int main (int argc, char *argv[])
{
  GtkWidget *window;
/*--- CSS -----------------*/
  GtkCssProvider *provider;
  GdkDisplay *display;
  GdkScreen *screen;
/*-------------------------*/
  gtk_init (&argc, &argv);

  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);

  gtk_window_set_default_size (GTK_WINDOW(window),
                               500, 300);

  g_signal_connect (GTK_WIDGET(window),
                    "destroy",
                    G_CALLBACK (gtk_main_quit),
                    NULL);

  //CSS
  provider = gtk_css_provider_new ();
  display = gdk_display_get_default ();
  screen = gdk_display_get_default_screen (display);

  gtk_style_context_add_provider_for_screen (screen,
                                 GTK_STYLE_PROVIDER (provider),
                                 GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);

  gtk_css_provider_load_from_data (GTK_CSS_PROVIDER(provider),
                                   " GtkWindow {\n"
                                   "   -GtkWidget-focus-line-width: 0;\n"
/* The next 2 lines are not guaranteed to work, they can be can be overridden by the window manager*/
                                   "   -GtkWindow-resize-grip-height: 0;\n"   
                                   "   -GtkWindow-resize-grip-width: 0;\n"   
/* The next 4 lines are just 4 different ways to make the background blue. Each one overrides the last one.
    Their just different color units: named color units, rgb,  rgba, hexidecimal, and shade*/                     
                                   "   background-color: blue;\n"             
                                   "   background-color: rgb (0, 0, 255);\n" 
                                   "   background-color: rgba (0,0,255,1);\n"
                                   "   background-color: #0000FF;\n"           
                                   "   background-color: shade(blue, 1.0);\n" 
                                   "}\n", -1, NULL);
  g_object_unref (provider);
/*----------------------------------------------------------------------------------------------------------*/

  gtk_widget_show_all (window);
  gtk_main ();
return (0);
}