Salve a tutti e buon inizio d'anno,
vado subito al sodo: ho una mappa con una serie di elementi puntuali e, accanto, una tabella con alcune informazioni sugli elementi. Allo stato attuale delle cose, ogni punto si evidenzia (highlight) al passaggio del mouse su di esso. Vorrei, invece, che il punto si evidenziasse al passaggio del mouse sulla corrispondente riga della tabella. Sto provando, ma mi sono leggermente incartato :( ... qualche dritta? Grazie a tutti per l'aiuto -beppe- _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Brutalmente e senza ragionarci sopra, potresti:
- creare uno stile del tuo layer di punti in modo da avere una rappresentazione evidenziata/non evidenziata in funzione di un certo attributo - al passaggio del mouse, leggere l'id della riga dalla tabella - looppare tra le features e per quella che ha id uguale a quello letto dalla tabella, aggiornare l'attributo in modo che risulti evidenziata. Nella doc di OL dovresti trovare maggiori informazioni. Ciao Luca Il 05 gennaio 2011 15:41, beppe <[hidden email]> ha scritto: > Salve a tutti e buon inizio d'anno, > vado subito al sodo: ho una mappa con una serie di elementi puntuali e, > accanto, una tabella con alcune informazioni sugli elementi. > Allo stato attuale delle cose, ogni punto si evidenzia (highlight) al > passaggio del mouse su di esso. Vorrei, invece, che il punto si > evidenziasse al passaggio del mouse sulla corrispondente riga della > tabella. > > Sto provando, ma mi sono leggermente incartato :( ... qualche dritta? > > Grazie a tutti per l'aiuto > > -beppe- > > > _______________________________________________ > Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione > [hidden email] > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > Questa e' una lista di discussione pubblica aperta a tutti. > Non inviate messaggi commerciali. > I messaggi di questa lista non rispecchiano necessariamente > le posizioni dell'Associazione GFOSS.it. > 485 iscritti al 20.11.2010 -- Luca Casagrande http://www.lucacasagrande.net twitter: lucacasagrande _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Applicare solo uno stile non è sufficiente, è necessario richiamare ridisegnare la feature.
feat = wfs.getFeatureByFid(fid_della_deature); (oppure feat = wfs.getFeatureById(id_della_feature);) vectorlayer.drawFeature(feat,'temporary'); 'temporary' è lo stile di selezione standard di OL esposto tramite OpenLayers.Feature.Vector.style Per deselezionare devi reimpostare a 'default' lo stile e ridisegnare nuovamente. In modo molto banale potresti salvarti una feature temporanea, contente l'ultima feature selezionata, da deselezionare prima di selezionarne una nuova. Per gestire tutto ciò in maniera elegante converrebbe crearsi un controllino ad hoc, tipo il SelectFeature, con un Handler apposito (invece OpenLayers.Handler.Feature) che si preoccupi di intercettare gli eventi sulla tabella (click, mouseout, ecc.).... Non so quanta esprienza hai con js e OL, non è una cosa complessa cmq. PS: invece di loopare tu sulle feature, in fase di creazione della tabella attributi registrati per ogni riga FID o ID della feature, così la puoi richiamare direttamente coi metodi dell'esempio. giovanni Il giorno 05 gennaio 2011 15:57, [hidden email] <[hidden email]> ha scritto: Brutalmente e senza ragionarci sopra, potresti: _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Esatto, come suggerito da Giovanni,
è meglio applicare lo stile "evidenziato" solo alla feature che hai scelto per poi tornare al "default" quando deselezioni la riga della tabella (due stili e due eventi uno in e l'altro in out). Ciao Luca Il 05 gennaio 2011 19:03, G. Allegri <[hidden email]> ha scritto: > Applicare solo uno stile non è sufficiente, è necessario richiamare > ridisegnare la feature. > > > feat = wfs.getFeatureByFid(fid_della_deature); > (oppure feat = wfs.getFeatureById(id_della_feature);) > vectorlayer.drawFeature(feat,'temporary'); > > 'temporary' è lo stile di selezione standard di OL esposto tramite > OpenLayers.Feature.Vector.style > > Per deselezionare devi reimpostare a 'default' lo stile e ridisegnare > nuovamente. In modo molto banale potresti salvarti una feature temporanea, > contente l'ultima feature selezionata, da deselezionare prima di > selezionarne una nuova. > > Per gestire tutto ciò in maniera elegante converrebbe crearsi un controllino > ad hoc, tipo il SelectFeature, con un Handler apposito (invece > OpenLayers.Handler.Feature) che si preoccupi di intercettare gli eventi > sulla tabella (click, mouseout, ecc.).... Non so quanta esprienza hai con js > e OL, non è una cosa complessa cmq. > > PS: invece di loopare tu sulle feature, in fase di creazione della tabella > attributi registrati per ogni riga FID o ID della feature, così la puoi > richiamare direttamente coi metodi dell'esempio. > > giovanni > > > > Il giorno 05 gennaio 2011 15:57, [hidden email] > <[hidden email]> ha scritto: >> >> Brutalmente e senza ragionarci sopra, potresti: >> - creare uno stile del tuo layer di punti in modo da avere una >> rappresentazione evidenziata/non evidenziata in funzione di un certo >> attributo >> - al passaggio del mouse, leggere l'id della riga dalla tabella >> - looppare tra le features e per quella che ha id uguale a quello >> letto dalla tabella, aggiornare l'attributo in modo che risulti >> evidenziata. >> >> Nella doc di OL dovresti trovare maggiori informazioni. >> >> Ciao >> Luca >> >> >> Il 05 gennaio 2011 15:41, beppe <[hidden email]> ha scritto: >> > Salve a tutti e buon inizio d'anno, >> > vado subito al sodo: ho una mappa con una serie di elementi puntuali e, >> > accanto, una tabella con alcune informazioni sugli elementi. >> > Allo stato attuale delle cose, ogni punto si evidenzia (highlight) al >> > passaggio del mouse su di esso. Vorrei, invece, che il punto si >> > evidenziasse al passaggio del mouse sulla corrispondente riga della >> > tabella. >> > >> > Sto provando, ma mi sono leggermente incartato :( ... qualche dritta? >> > >> > Grazie a tutti per l'aiuto >> > >> > -beppe- >> > >> > >> > _______________________________________________ >> > Iscriviti all'associazione GFOSS.it: >> > http://www.gfoss.it/drupal/iscrizione >> > [hidden email] >> > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss >> > Questa e' una lista di discussione pubblica aperta a tutti. >> > Non inviate messaggi commerciali. >> > I messaggi di questa lista non rispecchiano necessariamente >> > le posizioni dell'Associazione GFOSS.it. >> > 485 iscritti al 20.11.2010 >> >> >> >> -- >> Luca Casagrande >> http://www.lucacasagrande.net >> twitter: lucacasagrande >> _______________________________________________ >> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione >> [hidden email] >> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss >> Questa e' una lista di discussione pubblica aperta a tutti. >> Non inviate messaggi commerciali. >> I messaggi di questa lista non rispecchiano necessariamente >> le posizioni dell'Associazione GFOSS.it. >> 485 iscritti al 20.11.2010 > -- Luca Casagrande http://www.lucacasagrande.net twitter: lucacasagrande _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Perfetto, grazie a tutti per le risposte!
Da poco sono stato risucchiato nel fantastico mondo di javascript e jquery, comunque mi applicherò e proverò a tirare fuori qualcosa, magari con il vostro aiuto ;) Grazie ancora -beppe- Il giorno gio, 06/01/2011 alle 00.28 +0100, [hidden email] ha scritto: > Esatto, come suggerito da Giovanni, > è meglio applicare lo stile "evidenziato" solo alla feature che hai > scelto per poi tornare al "default" quando deselezioni la riga della > tabella (due stili e due eventi uno in e l'altro in out). > > Ciao > Luca > > Il 05 gennaio 2011 19:03, G. Allegri <[hidden email]> ha scritto: > > Applicare solo uno stile non è sufficiente, è necessario richiamare > > ridisegnare la feature. > > > > > > feat = wfs.getFeatureByFid(fid_della_deature); > > (oppure feat = wfs.getFeatureById(id_della_feature);) > > vectorlayer.drawFeature(feat,'temporary'); > > > > 'temporary' è lo stile di selezione standard di OL esposto tramite > > OpenLayers.Feature.Vector.style > > > > Per deselezionare devi reimpostare a 'default' lo stile e ridisegnare > > nuovamente. In modo molto banale potresti salvarti una feature temporanea, > > contente l'ultima feature selezionata, da deselezionare prima di > > selezionarne una nuova. > > > > Per gestire tutto ciò in maniera elegante converrebbe crearsi un controllino > > ad hoc, tipo il SelectFeature, con un Handler apposito (invece > > OpenLayers.Handler.Feature) che si preoccupi di intercettare gli eventi > > sulla tabella (click, mouseout, ecc.).... Non so quanta esprienza hai con js > > e OL, non è una cosa complessa cmq. > > > > PS: invece di loopare tu sulle feature, in fase di creazione della tabella > > attributi registrati per ogni riga FID o ID della feature, così la puoi > > richiamare direttamente coi metodi dell'esempio. > > > > giovanni > > > > > > > > Il giorno 05 gennaio 2011 15:57, [hidden email] > > <[hidden email]> ha scritto: > >> > >> Brutalmente e senza ragionarci sopra, potresti: > >> - creare uno stile del tuo layer di punti in modo da avere una > >> rappresentazione evidenziata/non evidenziata in funzione di un certo > >> attributo > >> - al passaggio del mouse, leggere l'id della riga dalla tabella > >> - looppare tra le features e per quella che ha id uguale a quello > >> letto dalla tabella, aggiornare l'attributo in modo che risulti > >> evidenziata. > >> > >> Nella doc di OL dovresti trovare maggiori informazioni. > >> > >> Ciao > >> Luca > >> > >> > >> Il 05 gennaio 2011 15:41, beppe <[hidden email]> ha scritto: > >> > Salve a tutti e buon inizio d'anno, > >> > vado subito al sodo: ho una mappa con una serie di elementi puntuali e, > >> > accanto, una tabella con alcune informazioni sugli elementi. > >> > Allo stato attuale delle cose, ogni punto si evidenzia (highlight) al > >> > passaggio del mouse su di esso. Vorrei, invece, che il punto si > >> > evidenziasse al passaggio del mouse sulla corrispondente riga della > >> > tabella. > >> > > >> > Sto provando, ma mi sono leggermente incartato :( ... qualche dritta? > >> > > >> > Grazie a tutti per l'aiuto > >> > > >> > -beppe- > >> > > >> > > >> > _______________________________________________ > >> > Iscriviti all'associazione GFOSS.it: > >> > http://www.gfoss.it/drupal/iscrizione > >> > [hidden email] > >> > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > >> > Questa e' una lista di discussione pubblica aperta a tutti. > >> > Non inviate messaggi commerciali. > >> > I messaggi di questa lista non rispecchiano necessariamente > >> > le posizioni dell'Associazione GFOSS.it. > >> > 485 iscritti al 20.11.2010 > >> > >> > >> > >> -- > >> Luca Casagrande > >> http://www.lucacasagrande.net > >> twitter: lucacasagrande > >> _______________________________________________ > >> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione > >> [hidden email] > >> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > >> Questa e' una lista di discussione pubblica aperta a tutti. > >> Non inviate messaggi commerciali. > >> I messaggi di questa lista non rispecchiano necessariamente > >> le posizioni dell'Associazione GFOSS.it. > >> 485 iscritti al 20.11.2010 > > > > > _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 485 iscritti al 20.11.2010 |
Free forum by Nabble | Edit this page |