Salut,
Je bosse actuellement sur une intégration du Lua dans une application Qt, comme premier essai j'ai fait une console permettant d'exécuter des commandes.
Tout marche bien pour l'exécution des commandes, maintenant il faudrait que certaines fonctions du lua, comme "print" affiche ce qu'elles doivent afficher dans la console de Qt, pour cela j'ai fais une méthode "AddConsole" sur mon objet représentant la console, dérivé de QWidget.
Le problème c'est que cet objet est créé dans la fonction main et donc n'est pas défini dans les fichiers du lua (Que j'ai réussi a compiler en C++, nativement c'est du C)
Donc j'aimerais que cette variable soit accessible dans tous les fichiers du projet.
Voila le code de mon fichier main.cpp
La variable est w, je souhaite donc la rendre accessible partout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 #include <QtGui> #include "serverapp.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); ServerApp w; w.show(); return a.exec(); }
La déclarer en dehors de main ne fonctionne pas.
J'ai également un autre problème avec le Lua, je l'ai compilé en C++ et j'ai vérifié (En testant un type bool) que c'était le cas.
Par contre lorsque j'inclus QtGui dans un entête d'un fichier composant le lua, le compilateur gueule :
Comme vous pouvez le voir je suis sous Qt Creator 1.0
J'aimerais inclure Qt dans les fichiers natifs du lua afin de pouvoir lancer un timer lorsqu'il entre dans une boucle, afin de prévenir les boucles infinies.
Merci d'avance
Partager