Granite ha sido desarrollado por la gente de ElementaryOS, y se trata de un Framework que proporciona varios Widgets para la interfaz de usuario (que veremos más abajo).
Podemos acceder al código de Granite (escrito en Vala) en https://code.launchpad.net/granite.
Instalación
sudo apt-get install libgranite-dev
sudo apt-get install gir1.2-granite-1.0
CaracterÃsticas principales
–LightWindow
Ahora sólo hace falta crear un Objeto Lol:
Lol ventana = new Lol ();
ventana.destroy.connect (Gtk.main_quit);
ventana.show_all ();
-AboutDialog
-SearchBar
var search_entry = new Granite.Widgets.SearchBar ("Search");
-DataPicker
var datepicker = new Granite.Widgets.DatePicker ();
-PopOver
var pop = new Granite.Widgets.PopOver ();
Dentro podemos añadir labels, crear un layout, etc.
-Tab
var tab = new Granite.Widgets.Tab ("user1@elementaryos: ~",new ThemedIcon ("empty"),new Gtk.Label ("Page 1"));
Tienen que ser añadidas en un DynamicNotebook.
Usar granite cuando desarrollamos en Vala
Una vez instalada la librerÃa sólo tenemos que usarla:
Cuando compilemos:
valac -v main.vala  --pkg gtk+-3.0 --pkg granite
Documentación: http://valadoc.elementaryos.org/granite/index.htm