Programación en Vala + GTK3 + Granite para ElementaryOS (Parte 2)
2.- Vala + GTK3
2.1.- Primer Hello World
Empezaremos con un Hello World mediante Vala y GTK3. Dejaremos Granite para más adelante.
using Gtk;
int main (string[] args) {
Gtk.init (ref args);
var window = new Window ();
window.title = "First GTK+ Hello World";
window.border_width = 10;
window.window_position = WindowPosition.CENTER;
window.set_default_size (350, 70);
window.destroy.connect (Gtk.main_quit);
window.show_all ();
Gtk.main ();
return 0;
}Compilaremos el código mediante:
valac helloworld.vala -o helloworld --pkg gtk+-3.0
Ejecutamos el resultado
./helloworld
Más adelante en la documentación se explicará a utilizar CMAKE cómo herramienta para la compilación.
2.3.- Segundo Hello World
Ahora vamos a hacer un Hello World más elaborado. Usaremos un botón GTK y haremos que ese botón responda al click.
using Gtk;
int main (string[] args) {
Gtk.init (ref args);
var window = new Window ();
window.title = "First GTK+ Hello World";
window.border_width = 10;
window.window_position = WindowPosition.CENTER;
window.set_default_size (350, 70);
window.destroy.connect (Gtk.main_quit);
var button = new Button.with_label ("Click me!");
button.clicked.connect (() => {
button.label = "Thank you";
});
window.add (button);
window.show_all ();
Gtk.main ();
return 0;
}Seguiremos compilado de la misma manera que hasta ahora.
valac trunk/src/helloworld2.vala -o helloworld2 --pkg gtk+-3.0
Ejecutamos el resultado
./helloworld2
2.4.- Avanzando con GTK3
A partir de este momento es más práctico seguir el manual de Vala + GTK3 que se puede encontrar en la página oficial de Vala: http://live.gnome.org/Vala/GTKSample