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
Lento pero seguro viene el desarrollo de ElementaryOS. No me muevo del netinstall de Debian pero ando con ganas de probar «Isis» cuando salga.
Y valla que si! Actualmente uso Elemenatry, vengo de Manjaro y de Arch y estoy muy agusto con algo que desde mi punto de vista es bueno, bonito y estable.
Sin duda alguna, cuando salga isis a lo mucho espero una semana para hacer el upgrade…
Otro más que viene de Arch y ha sido probar ElementaryOS por casualidad e instalarla y hasta el momento me encanta, rápidez de arranque, estabilidad, preciosa y práctica.
Esto si es una buena iniciativa por parte de la gente de Elementary, le están poniendo corazón.
Excelenteee
Muy bonito, pero es gtk… RUNZ
Yo prefiero QT por su portabilidad.
Genial – le echare un vistazo a ver que tal.
SaludoS!
Saludos. Me podrían recomendar algunos tutoriales y documentación sobre programación en GTK y Vala con el uso de Granite. Existe algún IDE que permita desarrollar de manera similar a como en VIsual Studio?. Vengo de Windows y me encantaria comenzar a probar con programación para Elementary. Gracias
instale elemenatryosluna y al reiniciar a la mañana siguiente mesalio el mensaje.
elementaryosluna desingblacksystem-system-producto-Name tty
elementaryosluna desingblacksystem-system-producto-Name login:
alguien podia hacerme el enorme fabor de ayudarme plesse.
Hola Bimbo como estas… una pregunta media de Boba (proviente del Noob que soy jeje)… cuando pones
Using Granite; <– Cargas granite
y luego en la clase pones:
public class APP : Granite.Application { <– Podrías darme info sobre esa parte "Granite.Applications" ?
digo porque más arriba pones: Granite.Widgets.LightWindow entonces me pierdo jaja.
PD: Soy el creador de la APP 'Fondo' para Elementary OS 😉
http://deb-libre.blogspot.com.ar/2013/10/fondo-una-herramienta-interesante-para.html
Bueno en ese caso (Granite.Widgets.LightWindow) es por que quiere crear una ventana LightWindow, si puesieramos otra cosa por ejemplo un Label , la clase representaría un label, creo que no me explico, es decir al lado de los «:» ponemos Granite.Application por que queremos que esa clase o dile objeto, sea una sub clase de Granite.Application
Una consulta.
De donde puedo descargar el codigo del demo de Granite?
Me parece de mucha ayuda para quienes nos iniciamos.
Espero puedas responderme.
Hola, Si tienes instalado Bazaar (bzr) puede bajarte el código y crear tu propia branca con bzr branch lp:granite , si no puedes bajarte-lo de este link https://launchpad.net/granite/0.3/0.3/+download/granite-0.3.0.tar.gz Dentro de la carpeta encuentras otra carpeta con el nombre Demo, hay esta el código (GraniteDemo.vala), en caso que solo quieras echarle un ojo mejor verlo online: http://bazaar.launchpad.net/~elementary-pantheon/granite/granite/view/head:/demo/GraniteDemo.vala
Muchisimas gracias.
Otra consulta adicional. Tienes ejemplos de un headbar?
No se como implementarlo en la aplicacion, realemente.
Tienes un pequeño tutorial en mi blog, es tan sencillo como:
var header = new Gtk.HeaderBar();
header.set_title («Lolinuxdev»);
header.set_subtitle («dev»);
header.show_close_button = true;
var button = new Gtk.Button.with_label («:)»);
header.pack_end (button);
app.set_titlebar (header);
Thanx a lot, Amigo Muchísimas