|  |  |  | GTK+ 3 Reference Manual |  | 
|---|
In GTK+ 3.0, GtkStyleContext was added to replace GtkStyle and the theming infrastructure available in 2.x. GtkStyleContext is an object similar in spirit to GtkStyle, as it contains theming information, although in a more complete and tokenized fashion. There are two aspects to switching to GtkStyleContext: porting themes and theme engines, and porting applications, libraries and widgets.
      From GTK+ 3.0 on, theme engines must implement GtkThemingEngine and be
      installed in $libdir/gtk+-3.0/$GTK_VERSION/theming-engines,
      and the files containing style information must be written in the CSS-like
      format that is understood by GtkCssProvider. For a theme named
      "Clearlooks", the CSS file parsed by default is
      $datadir/themes/Clearlooks/gtk-3.0/gtk.css,
      with possible variants such as the dark theme being named
      gtk-dark.css in the same directory.
    
      If your theme RC file was providing values for GtkSettings, you
      can install a settings.ini keyfile along with
      the gtk.css to provide theme-specific defaults
      for settings.
    
      Key themes have been converted to CSS syntax too. See the
      GtkCssProvider documentation
      information about the syntax. GTK+ looks for key themes in the file
      $datadir/themes/, where theme/gtk-3.0/gtk-keys.csstheme is the current
      key theme name.