TwinXeon by Renaudet
/Accueil/Tous les articles
TwinXeon Application Builder : pas d'excuse pour les développeurs !
Alors que le Virtual Desktop s'étoffe de jour en jour, un manque cruel se faisait sentir : celui d'un outil d'aide au développement d'applications graphiques pour cet environnement.

En effet, ce n'est pas que les API du Virtual Desktop soient bien compliquées, mais elles sont tout de même 100% propriétaires. Disposer d'un outil permettant de générer le squelette de l'application, d'en éditer le code source et de tester cette application facilement serait un plus indéniable pour convaincre d'autres développeurs d'apporter des outils ou des applications dignes de ce nom à mon Virtual Desktop.

J'ai commencé ce projet dans la continuité du développement de ma librairie NO HTML. L'outil, sobrement appelé Application Builder, est donc développé en utilisant les APIs du Virtual Desktop et cette librairie AWT-like qui permet de conserver une programmation événementielle par composant au sein d'une application Web traditionnelle.

Voici donc aujourd'hui la première version d'Application Builder pour TwinXeon :



Son interface, très simple, permet de gérer une liste de projets d'applications. Pour le projet sélectionné courant, l'utilisateur donne un nom d'application (un identifiant d'Object JavaScript en fait), un namespace assimilable à un nom de package Java par exemple, une description qui servira à remplir la traditionnelle boîte de dialogue A propos..., ainsi qu'une chaîne de Copyright, un numéro de version et les largeur / hauteur initiales de la fenêtre.

Sur l'onglet suivant, l'utilisateur peut activer un certain nombre d'options de génération :



Enfin, sur l'onglet Propriétés, l'utilisateur peut renseigner des propriétés personnalisées qui seront accessibles par l'application en lecture / écriture pour sa configuration ou pour sauvegarder un état interne :



Une fois ces différents champs renseignés, l'utilisateur peut utiliser la fonction Build pour demander une génération de code :



La première génération du code active également la fonction de test intégrée (Launch) :



Pour cet exemple, le générateur a créé un objet JavaScript TestApplication basés sur l'API UIApplication du VirtualDesktop et s'appuyant sur les librairies twinxeon-graphics et twinxeon-preferences pour former un embryon activable d'application graphique pour le Virtual Desktop.

Cette application embryonnaire dispose d'une barre de menu avec menu Fichier / Préférences et Fichier / Quitter. Le menu ? ouvre la boîte de dialogue A propos.



Le menu File / Preferences ouvre une boîte de dialogue d'édition des préférences utilisateur :



Le dernier bouton de l'interface d'Application Builder permet d'ouvrir un éditeur de code sur le code source généré :



Nous allons maintenant observer de plus près une fonctionnalité très puissante du générateur de code de TwinXeon (pour information, il s'agit du générateur de code utilisé par le site statique et présenté dans cet article) :

Tout d'abord, cochons l'option



Ensuite, on déclenche une nouvelle génération en cliquant le bouton Build.

Enfin, on édite le code source ainsi re-généré pour modifier l'implémentation de la fonction onMenuCreation(). L'implémentation par défaut de cette fonction est une succession de lignes de commentaires. On enlève les balises de commentaires des lignes 3 à 7 du code source de la fonction :



On obtient quelque chose comme :




On sauvegarde le code source ainsi modifié et on clique sur le bouton Launch :



Un nouveau menu My Menu apparaît dans la barre de menu de l'embryon d'application. Le menu associé propose un item exemple My Menu Item et une action associée (lancement d'une alerte).

Que se passe-t-il maintenant si nous régénérons le code source de l'application ?

Pour le savoir, on modifie l'attribut version de notre application :



Puis on régénère en cliquant sur Build...




Et voilà : l'application a bien été régénérée en version 1.0.1 (au passage, notez le rechargement dynamique du code JavaScript...) mais les modifications utilisateur (les 4 lignes sans commentaire) ont bien été préservées.

Merci qui ?

(TwinXeon Application Builder sera disponible exclusivement pour les utilisateurs enregistrés du VirtualDesktop qui en auront fait la demande à l'administrateur via ce formulaire)




Ajoutez votre commentaire :
  Votre pseudo :
  Votre adresse mail (obligatoire):
  Votre commentaire :
 
Site optimisé pour un affichage en 800x600 sous Firefox 8.x - ©Copyright 2011-2012 by Nicolas Renaudet