IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

GWT et Vaadin Java Discussion :

[GXT] Tree, Leaf et Style CSS


Sujet :

GWT et Vaadin Java

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    octobre 2009
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : octobre 2009
    Messages : 76
    Points : 80
    Points
    80
    Par défaut [GXT] Tree, Leaf et Style CSS
    Bonjour,

    Le lien suivant est un exemple de Tree GXT : http://www.sencha.com/examples/#ExamplePlace:basictree

    Je voudrais pouvoir afficher le texte d'une feuille en gras ou en Bleu, Vert,...etc, afin de la distinguer rapidement (visuellement) des autres.

    par exemple la 1ère de l'arbo. Beethoven>Quartets :"Six String Quartets" dans l'exemple ci-dessus.



    D'avance, Merci

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    octobre 2009
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : octobre 2009
    Messages : 76
    Points : 80
    Points
    80
    Par défaut Une Solution
    On peut Overrider la méthode renderChild du tree

    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
     
     
    interface ProfiledCellTemplates extends XTemplates {
    		@XTemplate("<div style=\"background-color:{rgbColor};\">{data}</div>")
    		public SafeHtml colorComponent(SafeHtml data, String rgbColor);
    	}
     
     
     
    final Tree<MyTypeNode , String> tree =
    			new Tree<MyTypeNode , String>(store, valueProvider) {
     
    @Override
    				protected SafeHtml renderChild(MyTypeNode parent, MyTypeNode child, int depth, TreeViewRenderMode renderMode) {
    					ProfiledCellTemplates profiledCellTemplates = GWT.create(ProfiledCellTemplates.class);
     
    					SafeHtml result = super.renderChild(parent, child, depth, renderMode);
    					if(child.mustBeHighlighted()){
    						return profiledCellTemplates.colorComponent(result, "red");
    					}
    					return result;
    				}

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    octobre 2009
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : octobre 2009
    Messages : 76
    Points : 80
    Points
    80
    Par défaut
    Je n'accédais pas au texte affiché pour une feuille, tout ce que je pouvais modifier avec la tentative ci-dessus, c'était la couleur de fond.
    mais pour changer la couleur du texte (libellé d'un élément) ou le mettre en gras, je ne pouvais pas

    une solution, est de récupérer le String resultAsString = result.asString(); où (SafeHtml result = super.renderChild(parent, child, depth, renderMode); )

    on trouvera que :
    resultAsString ressemble à :{ <div id="x-widget-9_45_/MyArbo/2013/12/libelle_element" class="GC3IAI4BBPB">
    ........<span class="GC3IAI4BEPB">libelle_element_id_k</span></div></div>


    ensuite on effectue la modif comme suit (modifier la chaine libelle_element_id_k et la remplacer dans resultAsString ):
    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
     
    interface ProfiledCellTemplates extends XTemplates {
    		@XTemplate("<div style=\"color:green;font-style:italic;font-weight:bold;\">{data}</div>")
    		public SafeHtml changeStringStyle(String data);
    	}
     
     
     
    @Override
    				protected SafeHtml renderChild(ILibelleThfCatalogNode parent, ILibelleThfCatalogNode child, int depth, TreeViewRenderMode renderMode) {
    					final ProfiledCellTemplates profiledCellTemplates = GWT.create(ProfiledCellTemplates.class);
     
    					SafeHtml result = super.renderChild(parent, child, depth, renderMode);
     
                    String libelleElement = child.getName();
    		String resultAsString = result.asString();
    		String coloredLibelleElement = profiledCellTemplates.changeStringStyle(child.getName()).asString();
    		resultAsString = resultAsString.replace(libelleElement , coloredLibelleElement );
    		return (new SafeHtmlBuilder().appendHtmlConstant(resultAsString)).toSafeHtml();
    }
     
    		};
    [[/QUOTE]

  4. #4
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    octobre 2009
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : octobre 2009
    Messages : 76
    Points : 80
    Points
    80
    Par défaut
    un post qui porte sur la même question : http://www.sencha.com/forum/showthre....onHeaderClick

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    octobre 2009
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : octobre 2009
    Messages : 76
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par OrigineDeLaVie Voir le message
    un post qui porte sur la même question : http://www.sencha.com/forum/showthre....onHeaderClick
    Erreur le post plus haut n'a rien à voir avec ce problème, je me suis trompé ; il est en relation avec :
    [GXT3] Désactiver la sensibilité (de la Grid?) à l'évènement clic du columnHeader (clic sur un titre colonne)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/01/2010, 17h06
  2. Obtenir le style CSS d'un objet
    Par Sub0 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/08/2005, 15h46
  3. Conflit dans les styles CSS
    Par Nerva dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 14/03/2005, 22h56
  4. Comment appliquer un style CSS ?
    Par adameteve dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 10/03/2005, 21h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo