Le 30 juin 2011 09:14, Dsls <[email protected]> a écrit : > > J'en profite pour faire la même chose. J'ai ajouté un behavior afin que > les > > plugins puisse ajouter des colonnes dans les listes admin. > > Je l'ai nommé adminGenericListConstruct. Si jamais ça ne vous plait > > pas/voyez mieux, n'hésitez pas ;) > > Hmmm ... je peux faire mon chieur ? >
Si tu veux vraiment le faire, faut pas poser la question ;) > On a une classe adminGenericList, dont héritent les classes > adminPostList, adminPostMiniList, adminCommentList, ... > > Pourquoi donc y a-t-il des ajouts spécifiques à toutes les classes > filles dans la classe adminGenericList ? Je trouverais ça plus propre > de mettre ça dans les constructeurs des classes filles, et avoir une > classe adminGenericList vraiment indépendante. Cela rendrait inutile > le behavior adminGenericListConstruct. > C'était pour factoriser le code au maximum. La classe adminGenericList s'occupe de toute la mécanique interne ainsi que l'affichage général. En l'état; - Si tu veux ajouter une liste, il suffit de créer un classe héritant de adminGenericList et de créer simplement des fonctions protected pour chaque colonne affichée. - Si tu veux ajouter une colonne à une liste existante, il suffit de la rajouter au bon contexte via le behavior adminGenericListConstruct et un appel du type: $this->addColumn(<context>,<id_colonne>,<titre_colonne>,<callback>); Si on faisait comme tu le préconises, cela veux dire que lorsque quelqu'un crée une nouvelle liste, il devra y placer son constructeur ainsi que ne pas oublier de créer son behavior. D'une, ça fait plus de code pour le dev (bon c'est une ligne je sais :P) et de deux, il peux très bien oublier de le faire et ainsi priver d'autres plugins de rajouter leurs propres colonnes. Tu vois l'idée? -- Tomtom aka Thomas
_______________________________________________ Dev mailing list [email protected] http://ml.dotclear.org/listinfo/dev
