2010-11-21 33 views
0

J'ai une application air qui a une extension d'un composant FileSystemTree, pour afficher uniquement les fichiers jpg et les répertoires dans le système de fichiers. Une case à cocher permet à l'utilisateur de choisir de voir les éléments de l'arborescence sous forme de vignettes ou d'éléments d'arborescence réguliers (étiquettes + icônes) (l'arborescence a la propriété variableRowHeight définie sur true).création d'un itemrenderer miniature pour un FileSystemTree - quelles fonctions du cycle de vie dois-je remplacer?

Si la case est cochée, chaque fois qu'une branche de l'arborescence est ouverte, toutes les vignettes des fichiers jpeg de ce répertoire sont affichées en premier. cette partie de l'application fonctionne bien (les pouces sont créés).

mon itemrenderer personnalisé est une extension de la classe TreeItemRenderer.

L'affichage des éléments dans l'arborescence est imprévisible et le défilement de l'arborescence le rend pire. Je suis assez sûr que je n'ai pas outrepassé correctement les fonctions "lifecycle" du composant (les méthodes d'invalidation et de validation).

J'ai ajouté une fonction appelée ThumbToggle qui informe le itemrenderer si la case est cochée ou désélectionnée alors que l'arbre est inactif. Quelle est votre opinion sur l'écrasement des données set, invalidateProperties, invalidateSize, invalidateDisplayList, commitProperties, measure, updateDisplayList et d'autres fonctions pour obtenir un bon fonctionnement d'un tel arbre?

Thanx à l'avance, Saar

Répondre

0

Etes-vous sûr que vous devez remplacer quoi que ce soit en plus get data et set data? Il y a beaucoup de place pour les erreurs dans les fonctions invalidate.