HookCallback()
==============

FUNKTION
--------

  mixed HookCallback(object hooksource, int hookid, mixed hookdata)

DEFINIERT IN
------------

  Eigenen Objekten

ARGUMENTE
---------

  - hooksource: Das Objekt, in dem das Ereignis ausgeloest wurde
  - hookid: Hooktyp des ausgeloesten Hooks
  - hookdata: Daten des ausgeloesten Hooks
    (S. Doku des jeweiligen Hooks.)

BESCHREIBUNG
------------

  Standard-Callback-Methode fuer Hooks. Wird beim Registrieren ein Objekt
  uebergeben, wird versucht, eine Closure auf HookCallback() an diesem Objekt
  zu erstellen. Man kann die Funktion auch anders benennen und direkt als
  Closure uebergeben. Dies ist insb. bei mehreren Hooks im gleichen Objekt
  hilfreich, weil es den Code uebersichtlicher macht. Die Argumente muessen
  jedoch immer die gleichen wie bei HookCallback() sein.

  Die Reihenfolge des Aufrufs der Konsumenten ist Surveyor, Hook-Modifikator, 
  Data-Modifikator, Listener. Innerhalb der Gruppen wird nach Prioritaet
  abgearbeitet.
  Ein Surveyor-Hook kann verhindern, dass Hooks bestimmte Aenderungen
  durchfuehren.

RUECKGABEWERTE
--------------

  ({<status>, <hookdata>})

  - Status: Eine der folgenden Konstanten:
    - H_NO_MOD: keine Veraenderung
    - H_ALTERED: Daten des Hooks geaendert
    - H_CANCELLED: Die Ausfuehrung der Hook-Kette und das ausloesende
      Ereignis werden abgebrochen
    Nicht alle Hooks unterstuetzen jeden Status.
  - hookdata: Die ggf. modifizierten Hookdaten.
    (S. Doku des jeweiligen Hooks.)

BEMERKUNGEN
-----------

  Bitte nutzt in neuem code nicht mixed, sondern unions entsprechend der
  Dokumentation der verwendeten Hooks.

  Auch reine Listener-Objekte muesse nein Array zurueckgeben, dessen erstes
  Element H_NO_MOD sein muss.

SIEHE AUCH
----------

  :doc:`HRegisterToHook`, :doc:`HUnregisterFromHook`, unions

Letzte Aenderung: 06.10.2022, Bugfix
