ggc-library
    Preparing search index...

    Dataset-switcher component.

    Dit component rendert een set radio buttons (op basis van DatasetSwitcherButton) waarmee de gebruiker tussen Theme's kan wisselen.

    Wanneer een theme actief wordt:

    • wordt een DatasetSwitcherEvent ge-emit (via events);
    • worden de onderliggende kaartlagen van het theme zichtbaar gemaakt via de OL layer service.

    Zodra themes “beschikbaar wordt” (van leeg → gevuld), bepaalt het component automatisch een initiële actieve theme:

    • als er al lagen zichtbaar zijn op de kaart, wordt het theme gekozen dat daarbij hoort;
    • anders wordt het theme gekozen dat overeenkomt met de eerste knop in datasetSwitcherButtons.

    Let op: deze initiële selectie gebeurt asynchroon (via setTimeout) om input-bindingen eerst te laten stabiliseren.

    Implements

    • OnChanges
    Index

    Properties

    datasetSwitcherButtons: DatasetSwitcherButton[]

    Knoppen die in de UI getoond worden.

    De name van een knop moet overeenkomen met de Theme.themeName om selectie te laten werken.

    events: EventEmitter<DatasetSwitcherEvent> = ...

    Event-stream voor consumers van dit component.

    Emit bij theme-wissels (handmatig of via initiële selectie).

    mapIndex: string = DEFAULT_MAPINDEX

    Identificeert de kaart/viewer waarop laag-zichtbaarheid wordt toegepast.

    themes: Theme[] = []

    Beschikbare themes waaruit gekozen kan worden.

    Als deze input overgaat van leeg → gevuld, probeert het component automatisch een initiële actieve theme te bepalen.

    Methods

    • Handler voor (change) events vanaf de radio buttons.

      Haalt de theme-naam uit event.target.id, zoekt het bijbehorende Theme en voert vervolgens twee acties uit:

      1. emit een DatasetSwitcherEvent;
      2. pas kaartlaag-zichtbaarheid aan via processMap.

      Parameters

      • changeEvent: Event

        DOM event afkomstig van de radio input.

      Returns void

    • Angular lifecycle hook die wordt aangeroepen bij input changes.

      Specifiek luistert dit component naar veranderingen in themes. Als themes “net beschikbaar” zijn geworden (previous leeg/undefined, current gevuld), start het component een asynchrone initiële selectie.

      Parameters

      • changes: { [propName: string]: SimpleChange<any> }

        Angular SimpleChanges object met gewijzigde inputs.

      Returns void