Je cherche une bibliothèque graphique portable sur différents
interpréteurs et si possible différents systèmes (priorité à Linux sinon).
J'ai trouvé ça :
- LTK : ça a l'air simple (les exemples de code trouvés), mais je ne
sais pas si c'est très complet...
- CLIM (si j'ai bien tout compris c'est une sorte de spécification
plutôt, et McCLIM semble être une implémentation qui convient)
- CLG : https://sourceforge.net/projects/clg/
Des avis ? J'ai pioché ça un peu dans tout ce que j'ai trouvé, les deux
premières sont des recommandations sur CLiki, mais bon je n'ai pas trop
(enfin pas du tout) d'avis là-dessus évidemment.
Merci
Sylvain
> Bonjour
>
Bonjour,
> Je cherche une bibliothèque graphique portable sur différents
> interpréteurs et si possible différents systèmes (priorité à Linux
> sinon).
>
> J'ai trouvé ça :
> - LTK : ça a l'air simple (les exemples de code trouvés), mais je ne
> sais pas si c'est très complet...
>
Très portable, simple à utiliser / modifier.
> - CLIM (si j'ai bien tout compris c'est une sorte de spécification
> plutôt, et McCLIM semble être une implémentation qui convient)
>
Portable à condition d'avoir un serveur X sur l'OS cible.
Pas de problème sous Linux/*BSD ou MacOS.
J'utilise Xming sous Windows :
http://www.straightrunning.com/XmingNotes/
Très efficace si on s'adapte au nouveau concepts.
> - CLG : https://sourceforge.net/projects/clg/
>
Je ne connais pas.
Sinon tu peux regarder du côté de SDL. J'aime beaucoup ce qui a été fait
avec lispbuilder-sdl :
http://lispbuilder.sourceforge.net/
On peut aussi faire de l'OpenGL avec.
Pour faire des interfaces GTK il y a aussi gtk-server :
http://www.gtk-server.org/intro.html
Sinon, tu peux aussi taper directement dans la XLib si tu veux repartir
à la base (c'est ce que j'utilise quand je veux faire des trucs un peu
exotiques) :
http://www.stud.uni-karlsruhe.de/~unk6/clxman/
> Des avis ? J'ai pioché ça un peu dans tout ce que j'ai trouvé, les
> deux premières sont des recommandations sur CLiki, mais bon je n'ai
> pas trop (enfin pas du tout) d'avis là-dessus évidemment.
>
Le choix dépend de ce que tu veux faire.
> Merci
>
J'espère que ça t'éclaire un peu.
Philippe
Ok, merci bien :)
Bon, le serveur X sous Windows ça peut servir, mais pas pour distribuer
un petit programme sur différentes plates-formes, dont Windows :) . Si
les instructions d'installation commencent par "installer un serveur X",
ça fait un peu peur...
Je garde quand même ça dans un coin.
* lispbuilder-sdl ça a surtout l'air de faire des dessins non ? Je ne
vais pas pouvoir utiliser des composants graphiques tout prêts (boutons,
...) ?
Est-ce que ça peut se mélanger à une autre bibliothèque (utiliser
lispbuilder-sdl pour dessiner dans un panneau d'une fenêtre créé avec
une autre bibliothèque) ?
* clx c'est une bibliothèque de bas niveau pour discuter diectement avec
le serveur X ?
* Et gtk-server, et clim ? J'ai regardé les exemples, ça n'a pas l'air
vraiment basique, mais on dirait quand même qu'on peut dire facilement
"pouf, je veux un bouton" ?
Je vais essayer LTK pour commencer, on verra ensuite pour d'autres
bibliothèques... :)
Sylvain
[...]
> Ok, merci bien :)
>
> Bon, le serveur X sous Windows ça peut servir, mais pas pour
> distribuer un petit programme sur différentes plates-formes, dont
> Windows :) . Si les instructions d'installation commencent par
> "installer un serveur X", ça fait un peu peur...
> Je garde quand même ça dans un coin.
>
Ca se fait très bien. Tu mets le serveur X dans ton projet et tu le
lance sans rien dire à l'utilisateur via un script bat.
Par exemple, c'est ce que j'ai fais ici :
http://common-lisp.net/project/cl-wav-synth/cl-wav-synth-win.zip
> * lispbuilder-sdl ça a surtout l'air de faire des dessins non ? Je ne
> vais pas pouvoir utiliser des composants graphiques tout prêts
> (boutons, ...) ?
>
Oui, c'est une bibliothèque bas niveau. Tu as des GUI mais il faudra
sûrement l'interfacer avec cffi.
http://www.libsdl.org/libraries.php?order=name&category=14&completed=0&os=-1&match_name=&perpage=50
http://aedgui.sourceforge.net/screenshots.html
http://libagar.org/screenshots.html.en
> Est-ce que ça peut se mélanger à une autre bibliothèque (utiliser
> lispbuilder-sdl pour dessiner dans un panneau d'une fenêtre créé avec
> une autre bibliothèque) ?
>
Il me semble que c'est faisable avec GTK. Mais dans ce cas autant
utiliser les canvas de GTK.
> * clx c'est une bibliothèque de bas niveau pour discuter diectement
> avec le serveur X ?
>
Oui, très bas niveau. Mais tu peux tout faire avec.
> * Et gtk-server, et clim ? J'ai regardé les exemples, ça n'a pas l'air
> vraiment basique, mais on dirait quand même qu'on peut dire facilement
> "pouf, je veux un bouton" ?
>
CLIM n'est pas forcement évident à utiliser. Une fois compiler il faut
comprendre les concepts. Par contre c'est extrêmement efficace pour
faire des interfaces. Une instruction rajoute (en gros) la gestion de la
souris, un menu dans la barre de menu, un raccourci clavier, la
completion automatique dans une REPL...
Par contre ça ne ressemble pas aux interfaces habituelles.
GTK serveur est une manière de faire du GTK portable. Regarde les
exemples, ça n'a pas l'air trop compliqué.
http://www.gtk-server.org/demo-stdin.clisp.txt
De plus il y a un binaire compiler (avec les dépendances) pour chaque
plateforme.
> Je vais essayer LTK pour commencer, on verra ensuite pour d'autres
> bibliothèques... :)
>
Oui, il me semble que c'est le plus simple à utiliser une fois que
tcl/tk est installé sur la machine.
Philippe
PS : Tu n'as pas précisé que tu voulais une GUI -> exit SDL et CLX :)
--
Philippe Brochard <hocwp_PASDE@SPAM_free.fr>
http://hocwp.free.fr
C'est le bon choix :)
Nous, on utilise Ltk au boulot pour les applications sur Linux,
Solaris et Windows, en mode local et serveur, avec SBCL et Allegro. A
ma connaissance il est le seul parmi les bilbliothèques GUIs non-
commercial prêt à déployer. Et il y aura bientôt une nouvelle version
de Ltk avec certaines améliorations, mais l'API restera presque
inédite.
> PS : Tu n'as pas pr�cis� que tu voulais une GUI -> exit SDL et CLX :)
>
>> PS : Tu n'as pas pr�cis� que tu voulais une GUI -> exit SDL et CLX :)
> D�sol�, une interface graphique pour moi c'�tait avec des boutons :) .
Justement, des boutons, �a se fait tr�s bien avec ncurses.
Par exemple, voir :
emacs -nw --eval "(customize-variable 'auto-mode-alist)"
avec tout ses jolis boutons entre crochets.
Au contraire, on peut concevoir un interface utilisateur graphique sans
bouton. Voir par exemple http://www.croquetconsortium.org/ il n'y a pas
trop de boutons dans cet interface utilisateur l�...
--
__Pascal Bourguignon__
http://www.informatimago.com