Komponenter og event-struktur Print

Vis Stedet indeholder en række standard-komponenter, som kan inkluderes på en side ved at skrive en minimal mængde HTML og JavaScript.
Disse komponenter er programmeret til nemt at arbejde sammen, ved at forstå og reagere på signaler, ”events”, som andre komponenter, hvad enten fra Vis Stedet eller fra en 3. part, sender.
Når en event signaleres vil der blive sendt et minimalt, letforståeligt ”geo-objekt”, som indeholder nærmere information om hvad og hvor denne event omhandler.

Geo-objekter indeholder altid et ”displayname” og et ”x”,”y” koordinatsæt, så man har et minimum af information til visning af objektet1. Hvad de der ud over indeholder er afhængig af hvilken event der er tale om.
Geo-objekterne er bevidst simplificerede, og anvender altid EPSG:25832 som referencesystem. De kan potentielt bære vilkårligt kompleks information (f.eks. polygoner i flere forskellige referencesystemer), men et grundprincip er at de altid også bærer simpel, standardiseret information, som alle komponenter kan stole på er tilgængelig, og ukritisk tilgå.

Vis Stedet-komponenterne indeholder alle ”addListener” funktioner, som kobler den data komponenten kan generere sammen med en javascript funktion. Disse ”addListener” funktioner kan muligvis være yderligere differentieret i f.eks. addPointListener, addBoxListener el.lign, afhængigt at om komponenten kan generere forskellige typer data ved forskellig brug.

Tilsvarende indeholder mange komponenter javascript funktioner som forventer at modtage et geo-objekt. Disse funktioner kan direkte kobles op som ”listeners” vha. de førnævnte ”addListener” funktioner. Hvad disse funktioner rent faktisk gør er forskelligt fra komponent til komponent, men princippet er at komponenten reagerer så intuitivt forudsigeligt som muligt. Hvis f.eks. et punkt sendes til et kortudsnit (VisStedet.Map objekt) på denne måde, vil kortet centrere på punktet.
Disse funktioner er blot standardopsætninger der skal gøre det så nemt som muligt at bruge den mest almindelige funktionalitet. Der er intet til hinder for at programmere sine egne event-handlers og anvende dem i stedet for, hvis standardfunktionaliteten ikke gør hvad man har brug for.

Se eksemplet "Ajax dropdown wired til kort" for at se den praktiske HTML og javascript kode der skal skrives for at udnytte dette system.

 

 


1) Hvis en event relaterer sig til en polygon vil x og y være centerkoordinaten for omfangspolygonen. Dette er arbitrært valgt, simpelthen som en mulighed for nemt at centrere på det relevante område.

 

Last Updated ( Wednesday, 27 August 2008 13:36 )