Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GEODATA DAYS 2024

#1 Thu 09 July 2009 10:39

BBarthur
Participant actif
Date d'inscription: 17 Jun 2009
Messages: 57

[mapfish] comment modifier mes info-bulles

Bonjour

Mon application mapfish permet d'interroger une couche grâce à un searcher. Des info-bulles contenant des champs de ma base de données apparaissent lorsque je clique sur un des labels. Jusque-là, pas de problème, si ce n'est qu'elles n'affichent pas leur contenu comme je l'aimerais.

Ce que j'aimerais faire, c'est modifier le contenu des info-bulles (ajouter une image, modifier l'ordre d'affichage des champs) mais je ne sais pas sur quoi intervenir pour y arriver.

Quelqu'un connaît la manip ?

Voici le code de mon searcher:

Code:

            var searcher = new mapfish.Searcher.Map({
                map: map,
                protocol: mapfish.Protocol.MapFish.create({
                   url: "titi",
                   params: {
                       no_geom: true,
                       attrs: ["texte", "nom"],
                       limit: 10
                   }
                }),
                searchTolerance: 15,
                displayDefaultPopup: true
            });
            map.addControl(searcher);
            searcher.activate();

Hors ligne

 

#2 Thu 09 July 2009 17:39

pgiraud
Juste Inscrit !
Date d'inscription: 24 Jun 2009
Messages: 6

Re: [mapfish] comment modifier mes info-bulles

Bonjour,

Le principe serait de redéfinir la fonction de callback qui va créer la popup. Dans la classe, Searcher.Map cela correspond à la méthode displayPopup et est appelée dans le cas où displayDefaultPopup a la valeur true.

Vous pourriez assez facilement rajouter une propriété displayPopup à la config de votre searcher pour redéfinir votre propre fonction.
Mais, certainement mieux, vous pourriez ajouter un observateur sur l'évènement "crudfinished" du protocol associé au searcher :

mySearcher.protocol.events.on({
    crudfinished: displayPopupCustom,
    scope: mySearcher
});

La fonction displayPopupCustom pourrait alors être une adaptation de la méthode displayPopup initiale selon votre besoin.

Hors ligne

 

#3 Thu 09 July 2009 20:38

BBarthur
Participant actif
Date d'inscription: 17 Jun 2009
Messages: 57

Re: [mapfish] comment modifier mes info-bulles

Bonjour, merci pour votre réponse

Dans quel fichier est définie la fonction displayPopup ? J'ai parcouru une bonne partie de mon dossier mfbase sans rien trouver sur cette fonction.

Où pourrais-je trouver de la documentation un tantinet fournie sur ce sujet ? Je dois dire que c'est très difficile de s'en sortir lorsqu'on n'a pas trop l'habitude.

Hors ligne

 

#4 Wed 15 July 2009 18:56

BBarthur
Participant actif
Date d'inscription: 17 Jun 2009
Messages: 57

Re: [mapfish] comment modifier mes info-bulles

J'ai fini par trouver...

la fonction displayPopup est dans /mfbase/mapfish/core/Searcher/Map.js

Hors ligne

 

Pied de page des forums

Powered by FluxBB