Envoyé par : guyzmo
Date : 25/03/2006 16:17
Bonjour, est ce quelqu'un a compris le fonctionnement utilisé pour la recherche dans l'historique et les bookmarks de firefox ? La recherche est faite en mettant l'attribut ref de l'arbre avec qqchose ressemblant à
arbre.setAttribute("ref","find:datasource=history&match=Name&method=contains&text=" + encodeURIComponent(recherche));
Je n'ai pas reussit à trouver dans les sources de Mozilla ou se comportement est codé, par contre, j'ai vu qu'il y a plusieurs façons de l'utiliser:
Je n'arrive pas à utiliser cette recherche avec mes arbres et mes sources de données (même si cette source est un composant xpcom accessible par rdf:la_source). tree.setAttribute("ref", "find:datasource=history&groupby=Hostname"); http://lxr.mozilla.org/seamonkey/source/(..)
3796 // convert the query in mQuery into a find URI 3797 // if there is a groupby= in the query, then convert that 3798 // into the start of another search term 3799 // for example, in the following query with one term: 3800 // 3801 // term[0] = { history, AgeInDays, is, 0 } 3802 // groupby = Hostname 3803 // 3804 // we generate the following uri: 3805 // 3806 // find:datasource=history&match=AgeInDays&method=is&text=0&datasource=history 3807 // &match=Hostname&method=is&text= 3808 // 3809 // and then the caller will append some text after after the "text=" 3810 //
http://lxr.mozilla.org/seamonkey/source/(..).
Est-ce que je doit définir ce comportement dans le code de mon composant de ma source de données ? Est-ce qu'il faut que j'oublie cette méthode ? Comment ce fait-il que ce comportement ne soit pas référencé sur xulplanet ? Pourquoi ça marche pas avec mes sources de données ?
Donc si quelqu'un pourrait m'éclaircir, ça serait sympa.
Modif: Voici le code de la source de données de l'historique http://lxr.mozilla.org/seamonkey/source/(..)
Envoyé par : laurentj
Date : 27/03/2006 10:34
Tiens je ne connaissais pas ça
Je ne sais pas comment tout ceci est implémenté. J'ai l'impression toutefois que c'est un hack en dur spécifique pour les bookmarks et l'historique.
Une chose dont je suis à peu prés certain : si il est possible d'utiliser find: pour n'importe quel source de donnée, je pense qu'il faut fournir le code qui va effectuer la recherche. En effet, si j'ajoute foo=bar dans l'url, comment le moteur rdf/template sait sur quel type de triple chercher ?
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.