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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 20 August 2009 09:32

Maxime31
Participant assidu
Date d'inscription: 3 Sep 2008
Messages: 175

[MapFish] Problème avec toggle button

Bonjour à tous,

J'ai développé une interface carto avec MapFish dans laquelle j'ai inséré une barre d'outils avec plusieurs boutons.

J'aimerais que ces boutons s'activent dès qu'on clique dessus et se désactive lorsque que l'on clique sur un autre, autrement dit des toggle button si j'ai bien compris.

Voila mon code :

Code:

 
var toolbar = new mapfish.widgets.toolbar.Toolbar({
     map: map, 
     configurable: false
});
 
toolbar.autoHeight = false;
toolbar.height = 30;
 
toolbar.addControl(new OpenLayers.Control.DrawFeature(vectorLayer, OpenLayers.Handler.Point, {title: 'Dessiner un point'}), {iconCls: 'drawpoint', toggleGroup: 'map', group: 'map'});
toolbar.add(new Ext.Toolbar.Spacer()); 
toolbar.addControl(new OpenLayers.Control.DrawFeature(vectorLayer, OpenLayers.Handler.Path, {title: 'Dessiner une polyligne'}), {iconCls: 'drawline', toggleGroup: 'map', group: 'map'});
toolbar.add(new Ext.Toolbar.Spacer()); 
toolbar.addControl(new OpenLayers.Control.DrawFeature(vectorLayer, OpenLayers.Handler.Polygon, {title: 'Dessiner un polygone'}), {iconCls: 'drawpolygon', toggleGroup: 'map', group: 'map'});
toolbar.add(new Ext.Toolbar.Spacer()); 
toolbar.addControl(new OpenLayers.Control.DragFeature(vectorLayer,{title:'Déplacer un objet'}), {iconCls: 'dragfeature', toggleGroup: 'map', group: 'map'});
toolbar.add(new Ext.Toolbar.Spacer()); 
toolbar.addControl(new OpenLayers.Control.ModifyFeature(vectorLayer,{title:'Modifier un objet'}), {iconCls: 'modifyfeature', toggleGroup: 'map', group: 'map'});
toolbar.add(new Ext.Toolbar.Spacer()); 
toolbar.addControl(new OpenLayers.Control.Button({title:'Infos'}), {iconCls: 'infos', toggleGroup: 'map', group: 'map', handler: infos_att});

Donc j'ai rajouté plusieurs boutons qui correspondent à des Control d'OpenLayers.

Le problème se situe au niveau du dernier bouton crée qui est un new OpenLayers.Control.Button. C'est un bouton qui sert à renvoyer des infos sur les objets de la carte en leur cliquant dessus.

Dans mon application, lorsque je clique sur ce bouton d'infos, il s'active bien (même si le bouton n'est pas "enfoncé", comme le sont les autres quand on clique dessus, ce qui est déjà un problème).
Mais le problème est que, dès que je clique sur un autre bouton, le bouton d'infos ne se désactive pas. Il continue à être actif et du coup, à chaque fois que je clique sur la carte, il continue d'exécuter la fonction qui lui est rattachée.
Pourtant j'ai bien précisé le toggleGroup donc je ne comprends pas pourquoi cela me fait ce problème.

J'espère avoir été assez clair. Si quelqu'un a une idée à ce sujet ?

Dernière modification par Maxime31 (Thu 20 August 2009 09:33)

Hors ligne

 

#2 Fri 21 August 2009 09:23

Maxime31
Participant assidu
Date d'inscription: 3 Sep 2008
Messages: 175

Re: [MapFish] Problème avec toggle button

Personne n'a d'idée ?

Hors ligne

 

Pied de page des forums

Powered by FluxBB