Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
vala [Le 02/10/2011, 15:20]
109.13.183.96
vala [Le 07/08/2023, 12:36] (Version actuelle)
spnux [Liens externes] MAJ hyperlien
Ligne 1: Ligne 1:
-{{tag>​programmation compilation ​BROUILLON}}+{{tag>​programmation compilation}}
  
 ---- ----
Ligne 13: Ligne 13:
 ===== Installation du compilateur (valac) ===== ===== Installation du compilateur (valac) =====
  
-====via les dépôts officiels==== +====Via les dépôts officiels==== 
-Il vous suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://valac|valac]]**.+Il vous suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>valac]]**.
  
-====via le PPA====+====Via le PPA====
  
 [[ppa|Ajoutez à vos sources de logiciels le PPA]] suivant : [[https://​launchpad.net/​~vala-team/​+archive/​ppa|ppa:​vala-team/​ppa]] , rechargez la liste des paquets, puis [[:​tutoriel:​comment_installer_un_paquet|installez le paquet]] **[[apt://​vala|vala]]** [[ppa|Ajoutez à vos sources de logiciels le PPA]] suivant : [[https://​launchpad.net/​~vala-team/​+archive/​ppa|ppa:​vala-team/​ppa]] , rechargez la liste des paquets, puis [[:​tutoriel:​comment_installer_un_paquet|installez le paquet]] **[[apt://​vala|vala]]**
Ligne 28: Ligne 28:
  
 Il est bien-sûr possible de fournir plusieurs fichiers sources Vala pour générer un exécutable. Pour lier une bibliothèque,​ on utilisera l'​option ''​%%--pkg%% <​package>'',​ par exemple pour compiler un programme utilisant [[wpfr>​GTK+]] :​ Il est bien-sûr possible de fournir plusieurs fichiers sources Vala pour générer un exécutable. Pour lier une bibliothèque,​ on utilisera l'​option ''​%%--pkg%% <​package>'',​ par exemple pour compiler un programme utilisant [[wpfr>​GTK+]] :​
-  valac source.vala -o executable ​--pkg gtk+-2.0+  valac --pkg gtk+-3.0 gtk-hello.vala
  
 Pour plus de détails, référez-vous à la [[:man|page de manuel]] de **valac**. Pour plus de détails, référez-vous à la [[:man|page de manuel]] de **valac**.
  
-===== Exemple de code =====+===== Exemple de code (sans dépendence à GTK) =====
  
 Voici un exemple de [[wpfr>​Hello World]] en Vala : Voici un exemple de [[wpfr>​Hello World]] en Vala :
  
-<​code ​c#>+<​code ​vala>
 using GLib; using GLib;
  
Ligne 52: Ligne 52:
 </​code>​ </​code>​
  
-===== Manipuler des objets créés avec glade dans l'edi Anjuta ===== 
-Fichier essai.ui 
-<​code>​ 
-<?xml version="​1.0"​ encoding="​UTF-8"?>​ 
-<​interface>​ 
-  <!-- interface-requires gtk+ 2.12 --> 
-  <object class="​GtkWindow"​ id="​window">​ 
-    <​property name="​visible">​True</​property>​ 
-    <​property name="​can_focus">​False</​property>​ 
-    <​property name="​title"​ translatable="​yes">​window</​property>​ 
-    <​property name="​default_width">​500</​property>​ 
-    <​property name="​default_height">​400</​property>​ 
-    <signal name="​destroy"​ handler="​main_on_destroy"​ swapped="​no"/>​ 
-    <​child>​ 
-      <object class="​GtkFixed"​ id="​fixed1">​ 
-        <​property name="​visible">​True</​property>​ 
-        <​property name="​can_focus">​False</​property>​ 
-        <​child>​ 
-          <object class="​GtkLabel"​ id="​label1">​ 
-            <​property name="​width_request">​50</​property>​ 
-            <​property name="​height_request">​20</​property>​ 
-            <​property name="​visible">​True</​property>​ 
-            <​property name="​can_focus">​False</​property>​ 
-            <​property name="​xalign">​0</​property>​ 
-            <​property name="​yalign">​0</​property>​ 
-            <​property name="​label"​ translatable="​yes">​Mon texte de départ.</​property>​ 
-          </​object>​ 
-          <​packing>​ 
-            <​property name="​x">​26</​property>​ 
-            <​property name="​y">​10</​property>​ 
-          </​packing>​ 
-        </​child>​ 
-        <​child>​ 
-          <object class="​GtkButton"​ id="​button1">​ 
-            <​property name="​label"​ translatable="​yes">​button</​property>​ 
-            <​property name="​width_request">​50</​property>​ 
-            <​property name="​height_request">​20</​property>​ 
-            <​property name="​visible">​True</​property>​ 
-            <​property name="​can_focus">​True</​property>​ 
-            <​property name="​receives_default">​True</​property>​ 
-            <​property name="​use_action_appearance">​False</​property>​ 
-            <signal name="​clicked"​ handler="​main_on_button_clicked"​ swapped="​no"/>​ 
-          </​object>​ 
-          <​packing>​ 
-            <​property name="​x">​26</​property>​ 
-            <​property name="​y">​50</​property>​ 
-          </​packing>​ 
-        </​child>​ 
-      </​object>​ 
-    </​child>​ 
-  </​object>​ 
-</​interface>​ 
-</​code>​ 
- 
-Fichier essai.vala 
-<​code>​ 
-using GLib; 
-using Gtk; 
- 
-public class Main : Object ​ 
-{ 
- 
- /*  
- * Uncomment this line when you are done testing and building a tarball 
- * or installing 
- */ 
- //const string UI_FILE = Config.PACKAGE_DATA_DIR + "/"​ + "​essai2.ui";​ 
- const string UI_FILE = "​src/​essai2.ui";​ 
- 
- //Mes pointeurs pour manipuler l'​interface graphique 
- private Window window ; 
- private Gtk.Label label1 ; 
- 
-  
- public Main () 
- { 
- 
- try  
- { 
- var builder = new Builder (); 
- builder.add_from_file (UI_FILE); 
- builder.connect_signals (this); 
- 
-  
- //var window = builder.get_object ("​window"​) as Window; 
- 
- //​Lecture du fichier xml et affectation des pointeurs aux objets 
- //​privés de la classe pour pouvoir les manipuler. 
- this.window = builder.get_object ("​window"​) as Window; 
- this.label1 = builder.get_object ("​label1"​) as Gtk.Label; 
-  
- window.show_all (); 
- 
- catch (Error e) { 
- stderr.printf ("​Could not load UI: %s\n", e.message); 
- 
- 
- } 
- 
- [CCode (instance_pos = -1)] 
- public void on_destroy (Widget window) ​ 
- { 
- Gtk.main_quit();​ 
- } 
-  
- [CCode (instance_pos=-1)] 
- public void on_button_clicked (Gtk.Button button1) { 
- stdout.printf ("​Bonjour Monde \n"); 
- 
- //Mes objets de classe manipuler 
- stdout.printf ( this.label1.get_text() + " \n"); 
-  
- this.label1.set_text("​J'​ai cliqué sur mon bouton."​) ; 
- } 
- 
- static int main (string[] args)  
- { 
- Gtk.init (ref args); 
- var app = new Main (); 
- 
- Gtk.main (); 
-  
- return 0; 
- }  
-} 
-</​code>​ 
 ===== Liens externes ===== ===== Liens externes =====
  
-  * [[http://live.gnome.org/​Vala|Site officiel de Vala]] **(en)*+  ​* **(en)** [[https://wiki.gnome.org/Projects/Vala|Site officiel de Vala]] ​ 
-  ​* [[wpfr>​Vala (langage de programmation)|Vala sur Wikipedia]] **(fr)** +  * **(fr)** [[wpfr>​Vala (langage de programmation)|Vala sur Wikipedia]] ​
-  * [[http://​www.wikivala.org|Wiki dédié à Vala]]+
  
 ---- ----
  
 //​Contributeurs : [[utilisateurs:​Dradge|Dradge]],​ [[utilisateurs:​Ban]],​ [[utilisateurs:​Kriegy|Kriegy]] // //​Contributeurs : [[utilisateurs:​Dradge|Dradge]],​ [[utilisateurs:​Ban]],​ [[utilisateurs:​Kriegy|Kriegy]] //
  • vala.1317561623.txt.gz
  • Dernière modification: Le 15/12/2011, 15:21
  • (modification externe)