Next: Wichtiger Hinweis , Previous: Beispiel 1 , Up: Exkurs GUI , Home: Einführung

musikinformatik-wise-24.org

Erklärung des Beispiels

  • Die Zeile (defparameter *slider1* (make-ref 1.0)) definiert einen Parameter *slider1*, der den Referenzwert des Sliders auf der Clamps Seite enthält. Er wird mit mit einer cl-refs Referenzzelle mit dem Wert 0.0 initialisiert.
  • slider-gui definiert eine Browserseite. Das Argument body ist ein Symbol, das den body der Seite referenziert, der bei Aufruf der Funktion von Clog automatisch übergeben wird.

    – In der ersten Zeile der Definition von #'slider-gui wird der Titel der Seite im Browser auf "Slider" gesetzt1.

    – Der Funktionsaufruf von #'create-o-slider definiert einen Slider. Das erste Argument dieser Funktion enthält den Ort, wo der Slider angelegt werden soll (in diesem Fall der body der Seite). Das zweite Argument bindet mit Hilfe der Funktion #'bind-refs-to-attributes Referenzzellen der Clamps Seite an Attribute des HTML Elements des Guis. In dem Beispiel wird das zuvor definierte *slider1* an das "value" Attribut des Sliders gebunden. Diese Verbindung ist bidirektional: Eine Veränderung durch Mausinteraktion im Gui führt automatisch zu einer synchronen Veränderung des Wertes von *slider1* und ein Setzen des Wertes von *slider1* mit der Funktion #'set-value führt automatisch zu einem Update im Gui2.

    Die übrigen Argumente von #'create-o-slider detzen den Minimal- und Maximalwert des Sliders, seine Orientierung und Layouteigenschaften mit Hilfe des :css Keywords.

Fußnoten:

1

#'html-document und title sind Funktionen von Clog, die -entsprechend Ihrem Namen- das html-dokument der Seite, bzw. deren Titel referenzieren. Für eine detailliertere Darstellung siehe die Dokumentation von Clog.

2

Für eine ausführlichere Einführung in Referenzzellen siehe das Kapitel Misc Packages/cl-refs in der Clamps Dokumentation (nach Starten von Clamps unter http://localhost:8282/clamps/index.html erreichbar).

Created: 2025-02-12 Mi 20:35

Validate