Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : glider

Date : 31/05/2006 10:32

bonjour a tous! car c'est le premier fois que je poste ici, je m'introduis un petit peux. je fais des developments en XUL , plus specialement du remote XUL ( combinee avec une database postgresql / PHP ). Les docs sur remote XUL sont pas vraiment tous a fait claire, et certaines choses peuvent changer avec des nouvelles versions du browser. Le website anglais du planet XUL est une bonne source de documentation, mais je trouve le forum un peu laxe. Je me trouve aussi parfois sur l'IRC du XUL, mais les gens la ne sont pas toujours 'user friendly', et surtout si le subject et 'remote XUL'. Maintenant le probleme que j'ai -> j'avais develope une petit classe pour les forets dynamic ( dynamic trees ), et ca utilise nsTreeView. Jusque' a maintenant ca a marche bien. Avec les dernieres browser firefox ( beta version 1.5.0.4 ) , je recu une erreur de security dom en utilisant le nsTreeView. Et il y avait des gens sur le IRC qui confirmait que le nsTreeView ne marcherait plus dans le futur . pour l'instant, j'ai remplacer cette fonctionalite par des fonction dom, mais ce n'est pas le meme ( plus lente, etc ).. Voila, ca sera toutes pour ma premiere poste

ps excuses pour les accents, mais j'ai une keyboard qwerty

jef peeraer

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : laurentj

Date : 31/05/2006 10:52

Bonjour et bienvenue,

tu veux dire que l'on ne peut plus accéder à la propriété view d'une balise tree, dans la dernière version de ff ?

Ou alors qu'on ne peut plus utiliser un treeview personnalisé ?

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : glider

Date : 31/05/2006 11:08

exactement . je peut le demonstrer aven une example simple. Est ce qu'il existe une pastebin ice quelque part ?

jef peeraer

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : laurentj

Date : 31/05/2006 11:18

pastebin.com

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : glider

Date : 31/05/2006 11:36

http://pastebin.com/748682

jef

ps il faut tester avec firefox 1.5.0.4 !

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : laurentj

Date : 31/05/2006 12:04

je viens de tester un truc : lire la propriété view est possible (ouf ! quand il s'agit d'un tree avec template rdf..).

Par contre, modifier la propriété, en effet, ce n'est plus possible...

Aprés investigation, il apparait que pour eux, il s'agissait d'un trou de sécurité grave car cela concerne le bug 326501 qui n'est accessible que par le public :-(.

Pour qu'on puisse modifier le view, il faut que l'objet view implemente l'interface nsINativeTreeView (voir les modifs qui ont été faites dans le code sur le treeboxobject, ce qui a été rajouté sont les lignes 193 à 198)

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : AurelBUD

Date : 14/06/2006 11:40

Et quel est la solution pour faire un code équivalent à :

var theview =  {
       rowCount:gDataList.Length,
       selection:null,
       treebox:null,
       widget:null,

       getCellText  : function (  row , colID ) {
               if(colID=='nom')
                       return gDataList[row].name;
               else
                       return gDataList[row].firstname;
       },
       getCellValue  : function (  row , colID )  {return "";},
       getImageSrc  : function (  row , colID )  {return "";},
       getLevel  : function (  row )  {
               return gDataList[row].level;
       },

       getParentIndex  : function (  row ){
               if(gDataList[row].parent)
                       return gDataList[row].parent.index;
               else
                       return 0;
       },

       hasNextSibling  : function (  row , afterIndex ){
               return (gDataList[row].nextSibling != null);
       },
       isContainer  : function (  row )    {
               return (gDataList[row].children.length > 0);
       },
       isContainerEmpty  : function (  row )  {
               return (gDataList[row].children.length == 0);
       },
       isContainerOpen  : function (  row )  { return true; },

       getProgressMode  : function (  row , colID )   {},
       getCellProperties  : function (  row , colID , properties ) { },
       getColumnProperties  : function ( colID , colElt , properties ){},
       getRowProperties  : function (  row , properties ){ },
       isEditable  : function (  row , colID )  {return false;},
       isSeparator  : function (  row )    {return false;},
       isSorted  : function ( )    {return false;},
       performAction  : function ( action )    {},
       performActionOnCell  : function ( action ,  row , colID )   {},
       performActionOnRow  : function (  action ,  row )   {},
       selectionChanged  : function ( )    {},
       setCellText  : function (  row , colID , value )    {},
       setTree  : function ( tree )    { this.treebox = tree;},
       toggleOpenState  : function (  row ) { },
       canDropBeforeAfter : function ( row , before ) { return false;},
       canDropOn  : function (  row )  {return false;},
       drop  : function (  row ,  orientation ) {},
       cycleCell  : function (  row , colID ) {},
       cycleHeader  : function ( colID , elt ) {}
}

document.getElementById("thetree").view = theview;

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : laurentj

Date : 14/06/2006 14:12

aucune : la seule solution, est de faire du RDF (ou manipuler le DOM à la main, mais c'est lent). (je parle bien sûr dans le cas d'une page XUL en remote, pas d'une page xul d'une extension).

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : AurelBUD

Date : 14/06/2006 14:15

Je viens de m'orienter vers la solution RDF ... et ça à l'air de fonctionner pas trop mal ... il faut juste que je refasse tout mon code ... GRRRRRRR !!!!

Sinon tu entend quoi par "remote" ou "extension" ??

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : laurentj

Date : 14/06/2006 14:57

extension ou remote = chrome ou pas chrome = enregistré dans firefox, ou fichier distant (sur le disque, sur un serveur web..).

# Re: remote XUL /nsTreeView/ firefox 1.5.0.4

Envoyé par : AurelBUD

Date : 14/06/2006 14:59

OK Je fonctionne en chrome ... donc pas de soucis pour le RDF.

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.