Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre averti
    La version 1.2 de JavaFX est disponible et arrive sur Linux et OpenSolaris
    Après un petit jeu de piste j'ai réussi à télécharger la 1.2 (Windows, Mac, Solaris x86, Linux)

    Les nouveautés

    Citation Envoyé par kajava Voir le message
    JavaFX dans sa version 1.2 arrive enfin sur Linux

    Plateforme de test (Fedora 10)

    http://java-javafx-iipt.blogspot.com...-linux-12.html
    Citation Envoyé par galien Voir le message
    Pour ceux que cela intéresse la première journée de javaone avec par le menu:

    JavaFX sur une télé LG.
    L'outil de création style flexbuilder.
    L'app store en javaFX.
    Les déclarations plus que rassurante du pdg d'Oracle sur le futur de javaFX (il voit bien OpenOffice version javaFX).
    La vidéo:
    http://java.sun.com/javaone/2009/general_sessions.jsp
    Ce sont finalement plutôt des bonnes nouvelles pour tout ceux qui appartiennent à l'encore trop petite communauté javaFX.
    Mise à jour du Plugin Eclipse

    Comme d'habitude le blog de james weaver vous donnera quelques infos dessus.

    http://learnjavafx.typepad.com/weblog/

  2. #2
    Expert éminent sénior
    Est ce qu'on peut s'attendre à une version plus mature qui va pouvoir faire face à la concurrence, ou faudra-t-il attendre une 2.0 ?

  3. #3
    Expert éminent sénior
    au fait, les nouveautés JavaFX 1.2 sont décrites là http://javafx.com/do...ticles/javafx1-2.jsp
    Mais le plus important à savoir est que JavaFX 1.2 n'est pas compatible JavaFX 1.1 (qui n'était pas compatible JavaFX 1.0)

    Et toujours pas de version annoncée pour Linux
    Vincent Brabant

    Ne pas me contacter par MP ni par mail pour des questions techniques. Ma liste d'amis restera vide.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  4. #4
    Inactif  
    quel est l intérêt de java fx franchement ? les développeurs java ne sont pas censée faire du flash ...

  5. #5
    Membre averti
    Y'a la version Linux et Solaris x86
    Il semble de plus que le jdk update 14

  6. #6
    Inactif  
    Une chose me rébute énormément chez JavaFX : l'incompatiblité entre les versions (comme dit plus haut).
    Etant dans un univers imprégné de Java, la moindre des choses aurait été de préserver cette compatiblité, non ? Ou celle-ci est-elle facilement franchissable ? Suffit-il seulement de recompiler avec le SDK visé ? (si ce n'est que ça... ça va, sinon je pleure)

    Merci
    *graou* et même *graou*, ou encore *graou*

  7. #7
    Membre averti
    Pour les changement et les incompatibilités:
    http://www.javafx.com/docs/articles/javafx1-2.jsp
    Sinon entreprise38 c'est en effet un peu embêtant mais étant donné la maturité de javaFX ce n'est pas si surprenant. Enfin l'API de composants graphique est définie, les problèmes viendront d'ailleurs principalement de ce coté. Sun l'avait cependant annoncé, ce n'est donc pas une surprise. Rassurons nous, les prochaines versions seront certainement rétro compatibles, comme java l'est aujourd'hui.

  8. #8
    Rédacteur/Modérateur

    Bah mieux vaut qu'ils modifient puis finalisent ENFIN l'API plutot que de garder des trucs deprecated pendant des annees. Apres... apres la pilule serait probablement mieux passee si la version 1.0 et 1.1/1.1.1 avaient ete respectivement appellees beta 98 et beta 99. Reste plus qu'a esperer que la version 1.2 soit la VRAIE version finale et non-pas une etape intermediaire de plus. Pis pour le futur, faudra aussi voir ce qu'Oracle en fait et des infos qu'on pourrait glaner a la JavaOne.


    Citation Envoyé par *alexandre*

    les développeurs java ne sont pas censée faire du flash ...
    Ahhh pourtant si mes souvenirs sont bons Java a commence en rajoutant des animations dans des pages web... Y a des trucs qui sont IMMENSEMENT plus compliques a faire en Java2D + JMF + JAI alors que c'est les doigts dans le nez en JavaFX.

    Mais bon... *gosh* va me falloir repasser sur tous mes exemples de test... enfin une fois les telechargements effectues.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  9. #9
    Rédacteur/Modérateur

    Ben a la vue des changements c'est pas encore ca...

    Mais ou est passe le language oriente pour les designers... ?

    Mixins ?
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  10. #10
    Nouveau membre du Club
    Un langage pour les designers? Hey ils vont pas quand même venir nous voler notre travail
    Bon, comme prévu on va souffrir, c'est pas rétro compatible et ça bouge pas mal. Mais je suis quand même content qu'ils aient amélioré la gestion des layouts et les perfs globales. Et puis une 1ère compatibilité linux officielle ça se fête non?
    Ce début de semaine va être rude...

  11. #11
    Membre averti
    Je vois pas vraiment pourquoi cette étiquette de langage pour les designers.
    C'est plutôt un langage moderne avec une grosse api graphique, des fonctionnalité bien pratiques mais pas forcément réservé au designers.
    L'outil du graphiste est la souris pas le clavier!
    Pour rester sur le design il semble que pour le prochain plugin netbeans on aura le support natif du svg actuellement juste implémenté pour le plugin ME
    http://wiki.netbeans.org/NewAndNoteWorthyNB67#section-NewAndNoteWorthyNB67-FullSupportForSVGRichComponentsInTheVisualMobileDesigner
    Quand netbeans rencontre photoshop...

  12. #12
    Futur Membre du Club
    JavaFX 1.2 arrive sur Linux
    JavaFX dans sa version 1.2 arrive enfin sur Linux

    Plateforme de test (Fedora 10)

    http://java-javafx-iipt.blogspot.com...-linux-12.html

  13. #13
    Membre chevronné
    En fait, quand on cherche à télécharger JavaFX, c'est bien la version 1.2 qu'on obtient, mais la homepage n'a pas été mise à jour.
    J'appelle "Point Traroth" le moment dans une discussion où quelqu'un parle des Bisounours. A partir de ce moment, toute discussion sérieuse devient impossible, puisque la légitimité d'une des parties pour exposer son point de vue est mise en cause. C'est juste un anathème, un moyen de décrédibiliser les autres sans avoir à discuter.

  14. #14
    Membre chevronné
    Citation Envoyé par galien Voir le message
    Je vois pas vraiment pourquoi cette étiquette de langage pour les designers.
    C'est plutôt un langage moderne avec une grosse api graphique, des fonctionnalité bien pratiques mais pas forcément réservé au designers.
    L'outil du graphiste est la souris pas le clavier!
    Pour rester sur le design il semble que pour le prochain plugin netbeans on aura le support natif du svg actuellement juste implémenté pour le plugin ME
    http://wiki.netbeans.org/NewAndNoteWorthyNB67#section-NewAndNoteWorthyNB67-FullSupportForSVGRichComponentsInTheVisualMobileDesigner
    Quand netbeans rencontre photoshop...
    Ce n'est pas sensé être "réservé" aux designers, mais *accessible* au designer, contrairement à Java. Sauf que la rupture de compatibilité entre chaque version empêche tout travail sérieux. C'est de la beta-version, ça, et encore.
    J'appelle "Point Traroth" le moment dans une discussion où quelqu'un parle des Bisounours. A partir de ce moment, toute discussion sérieuse devient impossible, puisque la légitimité d'une des parties pour exposer son point de vue est mise en cause. C'est juste un anathème, un moyen de décrédibiliser les autres sans avoir à discuter.

  15. #15
    Membre averti
    Javaone 09 et le futur de javaFX
    Pour ceux que cela intéresse la première journée de javaone avec par le menu:

    JavaFX sur une télé LG.
    L'outil de création style flexbuilder.
    L'app store en javaFX.
    Les déclarations plus que rassurante du pdg d'Oracle sur le futur de javaFX (il voit bien OpenOffice version javaFX).
    La vidéo:
    http://java.sun.com/javaone/2009/general_sessions.jsp
    Ce sont finalement plutôt des bonnes nouvelles pour tout ceux qui appartiennent à l'encore trop petite communauté javaFX.

  16. #16
    Rédacteur/Modérateur

    Comme cela l'a deja ete repete plusieurs fois officiellement c'est un language destine a faciliter le devellopement en utilisant une approche orientee design et non pas en utilisant l'approche classique en programmation. Il est positionne de maniere a concurrencer Flash et Silverlight et a accrocher tout le marche potentiel des designers (dans le language de Sun : des gens qui utilisent Illustrator et Photoshop. Dans leur propre mots -en parlant de la Production Suite- : "What do designers love? They love Photoshop & Illustrator! So we made Photoshop & Illustrator plugins instead of develloping our own designer's tool"). Bien sur Grosling a bien indique qu'on peut fait bien d'autres choses en JavaFX que des applications RIA (et je suis d'accord avec lui).

    En attendant pour les programmeurs, ca va ils ont l'habitude de faire ca "a la dure" ; pour l'accroche des designers... on repassera...

    Sympa JavaFX, z'ont reussis a se mettre a dos :
    * Les utilisateurs Linux lors des sorties 1.0 puis 1.1.1/1.1.
    * Les programmeurs Swing et Java2D (pas d'integration dans le sens inverse).
    * Les gens a qui le language est principalement destine faute d'outils de design corrects et a cause des incompatibilite entre chaque version...

    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  17. #17
    Rédacteur/Modérateur

    Ahhh dans la serie Good news, suite aux changements dans l'heritage et le passage a la poubelle de l'heritage multiple (direct) on peut enfin appeler super.machin() quand on veut appeler la super methode d'une classe.

    JListener.java
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    package test;
     
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
     
    /**
     *
     * @author fabriceb
     */
    public class JListener extends MouseAdapter {
        /**
         * {@inheritDoc}
         */
        @Override
        public void mouseClicked(MouseEvent event) {
            System.out.println("JListener: mouseClicked()");
        }
    }


    FXListener.fx
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    package test;
     
    import java.awt.event.MouseEvent;
    import javax.swing.SwingUtilities;
     
    /**
     * @author fabriceb
     */
     
    public class FXListener extends JListener {
        /**
        * {@inheritDoc}
        */
        public override function mouseClicked(e:MouseEvent):Void {
            if (SwingUtilities.isRightMouseButton(e)) {
                println("FXListener: mouseClicked()");
            }
            else if (SwingUtilities.isLeftMouseButton(e)) {
                println("Trying to call super.mouseClicked(e)");
                super.mouseClicked(e);
            }
        }
    }


    Pour info precedement il fallait faire un truc pas vraiment documente (voir pas du tout) : JListener.mouseClicked(e) (a eviter desormais puisque la fonction boucle alors a l'infini).
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  18. #18
    Rédacteur/Modérateur

    Bonne nouvelle alors

    Par contre j'vois pas la video (sans doute un blocage quelconque)... faudra que je regarde depuis chez moi.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  19. #19
    Rédacteur/Modérateur

    Apparement la gestion des types est un peu moins evoluee qu'avant. Ou du moins se base uniquement sur l'usage interne de la classe et non pas egalement sur son usage externe comme avant.

    Ainsi dans un test j'ai du specifier le type de deux membres que j'avais oublie de specifier lorsque j'avais code le test initialement..

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    public class ParameterEditorNode extends CustomNode {
        public var width;
        public var height;


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    def editor = ParameterEditorNode {
        width: bind mainPanel.width - 4 * 5.0
        height: bind mainPanel.height - 4 * 5.0;


    Sinon j'avais plein de ClassCastException (de ObjectVariaable en FloatVariable). Le probleme ici venait que le type de width etait bien trouve car la variable etait utilisee dans la classe meme alors que pour height, n'etant pas utilisee (elle positionnee dans la classe appellante mais pas utilisee dans la classe meme), elle prend le type Object dans la 1.2 alors qu'elle prenant le type Number dans les precedentes versions.

    Bon en meme temps, la, c'etait une erreur de ma part. Mieux vaut toujours prendre l'habitude de specifier les types des membres.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    public class ParameterEditorNode extends CustomNode {
        public var width:Number;
        public var height:Number;
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  20. #20
    Rédacteur/Modérateur

    Bon alors les mixins...

    Ceci ne compile plus :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    public class Selectable {
        /**
        * Indicates whether this <code>Selectable</code> is selectable.
        * <br/>Default value is {@value}.
        */
        public var selectable:Boolean = true on replace {
            onSelectableChanged(selectable);
        }
     
        /**
        * Called whether the selectable status has changed.
        * @param selectable The current selectable status.
        */
        public var onSelectableChanged:function(selectable:Boolean);
     
        /**
        * Indicates whether this <code>Selectable</code> is selected.
        * <br/>Default value is {@value}.
        */
        public var selected:Boolean = false on replace {
            onSelectedChanged(selected);
        }
     
        /**
        * Called whether the selected status has changed.
        * @param selected The current selected status.
        */
        public var onSelectedChanged:function(selected:Boolean);
     
    }


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    public class Enablable {
        /**
        * Indicates whether this enablabled is enabled.
        * <br/>Default value is {@value}.
        */
        public var enabled:Boolean = true on replace {
            onEnabledChanged(enabled);
        }
     
        /**
        * Called whether the enabled status has changed.
        * @param selected The current enabled status.
        */
        public var onEnabledChanged:function(enabled:Boolean);
    }


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    public class MenuToggleButton extends CustomNode, Selectable, Enablable {


    Il faut desormais ecrire :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    public mixin class Selectable {
        [...]


    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    public mixin class Enablable {
       [...]


    Ce que je trouve un peu etrange. Pourquoi le declarer au niveau de la classe-mere ? Ca serait plutot au niveau de la class-fille de le declarer (du meme style que extends ... implements ... en Java)
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

###raw>template_hook.ano_emploi###