[Buix-commits] r1225 - in jaxx/trunk/src/site: . fr/rst
Author: tchemit Date: 2009-02-20 12:49:46 +0000 (Fri, 20 Feb 2009) New Revision: 1225 Added: jaxx/trunk/src/site/fr/rst/Core.rst Removed: jaxx/trunk/src/site/fr/rst/Interface.rst jaxx/trunk/src/site/fr/rst/JavaBean.rst Modified: jaxx/trunk/src/site/fr/rst/BeanValidator.rst jaxx/trunk/src/site/fr/rst/NavigationTreeModel.rst jaxx/trunk/src/site/fr/rst/Todo.rst jaxx/trunk/src/site/fr/rst/index.rst jaxx/trunk/src/site/site.xml Log: update docs Modified: jaxx/trunk/src/site/fr/rst/BeanValidator.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/BeanValidator.rst 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/fr/rst/BeanValidator.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -5,6 +5,8 @@ .. contents:: +**WARNING : documentation non à jour...** + Présentation ============ Added: jaxx/trunk/src/site/fr/rst/Core.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/Core.rst (rev 0) +++ jaxx/trunk/src/site/fr/rst/Core.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -0,0 +1,154 @@ +++++ +Core +++++ + +.. contents:: + +Nouvelles fonctionnalités apportées sur les classes générées. + +--------- +Interface +--------- + +Présentation +============ + +Ajout de contrats sur le code généré dans JAXX. + +Mécanisme +========= + +Le compilateur JAXX génère des classes à partir de fichiers JAXX mais n'est pas capable d'ajouter des contrats sur +les objets générés, donc interdit en quelque sorte la programmation par contrat. + +Pour palier à cette limitation, on a ajouté un attribut spécial *implements*. + +Cette attribut ne doit être placé que sur le tag racine d'un fichier JAXX et son contenu est le nom qualifié d'un ou +plusieurs contrats séparaés par des virgules. + +:: + + <JPanel implements='java.lang.Comparable'> + + <script>public int compareTo(JPanel o) { return getName().compareTo(o.getName()); }</script> + + </JPanel> + +La classe générée aura bien le contrat *java.lang.Comparable*. + +-------- +Abstract +-------- + +Présentation +============ + +Ajout de la possibilité de générer des classes abstraites. + +Mécanisme +========= + +Ajout d'un attribut *abstract*. + +:: + + <JPanel abstract='true'/> + +La classe générée sera abstraite. + +-------- +Generics +-------- + +Présentation +============ + +Ajout de possible de type generique sur les inferfaces et superclass. + +Mécanisme +========= + +Ajout d'un attribut genericType et superGenericType. + +Exemple : (fichier Parent.jaxx) +:: + + <JPanel genericType='E' + implements='java.lang.Comparable<E>' + abstract='true' /> + +La classe générée sera de la forme : + +:: + + public abstract Parent<E> implements java.lang.Comparable<E> { + ... + } + +Pour surcharger une telle classe (fichier Son.jaxx) : + +:: + + <Parent superGenericType='String' + abstract='true'/> + +La classe générée sera de la forme : + +:: + + public Son extends Parent<String> { + ... + } + + +TODO +==== + +Permettre l'utilisation des types génériques dans les scripts. + +-------- +JavaBean +-------- + +Présentation +============ + +Ajout du support complêt des javaBean dans JAXX. + +Mécanisme +========= + +Il est possible dans JAXX de rajouter des objets quelconques via leur nom qualifié de classe : + +:: + + <JPanel> + <java.lang.Boolean id='myState' constructorParams='true'/> + <JLabel text='text' visible='{isMySate()}'/> + </JPanel> + +Avant l'ajout de la fonctionnalité, le code généré possèdait : + + * une propriété en lecture seul nommé *myState*. + +Aucun support javaBean n'était présent et le databinding sur la propriété *visible* du label n'est pas créé. Cela veut +dire que le label sera initialisé avec la valeur initiale du boolean et c'est tout... + +Avec l'ajout du support javaBean, on peut maintenant faire ces bindings, pour ce faire il suffit d'ajouter un attribut +*javaBean* sur l'objet : + +:: + + <JPanel> + <java.lang.Boolean id='myState' javaBean='true'/> + <JLabel text='text' visible='{isMySate()}'/> + </JPanel> + +On aura donc en plus : + + * un mutateur sur la propriété *myState* qui déclanchera l'envoie d'un *PropertyChange* sur la propriété lors de modification de valeur. + +Ainsi le compilateur JAXX sera capable d'enregistrer un novueau dataBindig sur la propriété *visible* du label et la +modification de l'état *myState* sera automatiquement répercuté sur la propriété. + +Note: le contenu de l'attribut *javaBean* est l'initialiteur de la propriété. \ No newline at end of file Deleted: jaxx/trunk/src/site/fr/rst/Interface.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/Interface.rst 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/fr/rst/Interface.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -1,38 +0,0 @@ ---------- -Interface ---------- - -.. contents:: - - -Présentation -============ - -Ajout de contrats sur le code généré dans JAXX. - -Mécanisme -========= - -Le compilateur JAXX génère des classes à partir de fichiers JAXX mais n'est pas capable d'ajouter des contrats sur -les objets générés, donc interdit en quelque sorte la programmation par contrat. - -Pour palier à cette limitation, on a ajouté un attribut spécial *implements*. - -Cette attribut ne doit être placé que sur le tag racine d'un fichier JAXX et son contenu est le nom qualifié d'un ou -plusieurs contrats séparaés par des virgules. - -:: - - <JPanel implements='java.lang.Comparable'> - - <script>public int compareTo(JPanel o) { return getName().compareTo(o.getName()); }</script> - - </JPanel> - -La classe générée aura bien le contrat *java.lang.Comparable*. - -TODO -==== - -Il serait intéressant lors de l'injection de contrats sur un objet jaxx de pouvoir vérifier si toutes les méthodes du -contrat sont bien implantées dans la classe, et si ce n'est pas le cas de rendre la classe abstraite. Deleted: jaxx/trunk/src/site/fr/rst/JavaBean.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/JavaBean.rst 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/fr/rst/JavaBean.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -1,50 +0,0 @@ --------- -JavaBean --------- - -.. contents:: - - -Présentation -============ - -Ajout du support complêt des javaBean dans JAXX. - -Mécanisme -========= - -Il est possible dans JAXX de rajouter des objets quelconques via leur nom qualifié de classe : - -:: - - <JPanel> - <java.lang.Boolean id='myState' constructorParams='true'/> - <JLabel text='text' visible='{isMySate()}'/> - </JPanel> - -Avant l'ajout de la fonctionnalité, le code généré possèdait : - - * une propriété en lecture seul nommé *myState*. - -Aucun support javaBean n'était présent et le databinding sur la propriété *visible* du label n'est pas créé. Cela veut -dire que le label sera initialisé avec la valeur initiale du boolean et c'est tout... - -Avec l'ajout du support javaBean, on peut maintenant faire ces bindings, pour ce faire il suffit d'ajouter un attribut -*javaBean* sur l'objet : - -:: - - <JPanel> - <java.lang.Boolean id='myState' constructorParams='true' javaBean='anyValue'/> - <JLabel text='text' visible='{isMySate()}'/> - </JPanel> - -On aura donc en plus : - - * un mutateur sur la propriété *myState* qui déclanchera l'envoie d'un *PropertyChange* sur la propriété lors de modification de valeur. - -Ainsi le compilateur JAXX sera capable d'enregistrer un novueau dataBindig sur la propriété *visible* du label et la -modification de l'état *myState* sera automatiquement répercuté sur la propriété. - - - Modified: jaxx/trunk/src/site/fr/rst/NavigationTreeModel.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/NavigationTreeModel.rst 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/fr/rst/NavigationTreeModel.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -4,6 +4,7 @@ .. contents:: +**WARNING : documentation non à jour...** Présentation ============ Modified: jaxx/trunk/src/site/fr/rst/Todo.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/Todo.rst 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/fr/rst/Todo.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -2,14 +2,7 @@ TODO ==== - - réorganiser ce module maven en deux modules : + - mettre à jour les documentations techniques et utilisateur. - * un premier module de runtime - - * un second module contenant uniquement le compilateur et non nécessaire au runtime. - - Le second module pourrait être facultatif et le code pourrait directement être placé dans le module du plugin. - - Cependant cela n'est pas possible actuelement car certains objets du runtime contiennent aussi du code utilisé - par le compilateur JAXX (par exemple StyleSheet). Il faut avant tout cloisonner le code non runtime. + - enrichir les démos. \ No newline at end of file Modified: jaxx/trunk/src/site/fr/rst/index.rst =================================================================== --- jaxx/trunk/src/site/fr/rst/index.rst 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/fr/rst/index.rst 2009-02-20 12:49:46 UTC (rev 1225) @@ -17,7 +17,7 @@ Ce dont vous avez besoin dans vos dépendances sont uniquement les modules jaxx-runtime-xxx. -TODO A finir la présentation de la nouvelle architecture (dans la version 1.1). +TODO A finir la présentation de la nouvelle architecture (dans la version 1.2). **Veuillez consulter la JavaDoc pour de plus ample détails sur les différentes librairies.** @@ -25,6 +25,8 @@ Nouvelles fonctionnalités ------------------------- + * Core_ + * I18n_ * JAXXContext_ @@ -33,11 +35,8 @@ * NavigationTreeModel_ - * JavaBean_ +.. _Core: Core.html - * Interface_ - - .. _I18n: I18n.html .. _JAXXContext: JAXXContext.html @@ -45,7 +44,3 @@ .. _BeanValidator: BeanValidator.html .. _NavigationTreeModel: NavigationTreeModel.html - -.. _Javabean: JavaBean.html - -.. _Interface: Interface.html \ No newline at end of file Modified: jaxx/trunk/src/site/site.xml =================================================================== --- jaxx/trunk/src/site/site.xml 2009-02-19 11:44:10 UTC (rev 1224) +++ jaxx/trunk/src/site/site.xml 2009-02-20 12:49:46 UTC (rev 1225) @@ -6,7 +6,7 @@ <skin> <groupId>org.codelutin</groupId> <artifactId>maven-lutin-skin</artifactId> - <version>0.2.2</version> + <version>0.2.3</version> </skin> <bannerLeft>
participants (1)
-
tchemit@users.labs.libre-entreprise.org