Dokumentation der Scripting-API: Unterschied zwischen den Versionen
(17 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | + | Die DiaShow lässt sich mit Scripts stark erweitern. Scripts können sowohl auf das Abspielen Einfluss nehmen aber auch die Benutzeroberfläche erweitern. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | * | + | Eines vorneweg: Hier geht es tief in die "Eingeweide" der DiaShow. Sie sollten bereits einfache Programmierkenntnisse mitbringen, um mit dieser Funktionalität etwas anfangen zu können. |
+ | |||
+ | = Wie benutze ich Scripts? = | ||
+ | Jedem DiaShow-Objekt kann ein Script angehängt werden, das zu verschiedenen Zeiten zur Ausführung kommt. Ein Script ist letztendlich nur eine Textdatei. Wann welcher Teil eines Scripts ausgeführt wird, wird durch [[Hooks]] bestimmt. Ein Hook ist nichts weiter als eine speziell benannte Funktion innerhalb des Scripts. Über die [[Scripting-Entwicklungsumgebung]] können Sie einem DiaShow-Objekt ein Script zuordnen bzw. neue Scripts erstellen. | ||
+ | |||
+ | = Weiterführende Informationen = | ||
+ | * [[Hooks]] - Wo/Wann kann ein Script etwas beeinflussen | ||
+ | * [[DiaShow-Objekte]] - Welche Elemente der Diashow lassen sich erstellen und ändern | ||
+ | * [http://code.google.com/p/dwscript/wiki/Language Sprachreferenz (DelphiWebScript)] - Welche Befehle stellt die Scripting-Programmiersprache bereit | ||
+ | * [[Scripting-Entwicklungsumgebung]] - Wie werden Scripts erstellt, getestet und debuggt. | ||
+ | * [[GUI-API]] - Wie kann eine Benutzeroberfläche erstellt werden | ||
+ | * [[:Kategorie:Scripting-API|Alle Seiten zur ScriptingAPI]] | ||
+ | |||
+ | = Beispiel = | ||
+ | |||
+ | Ein ganz einfaches Beispiel eines Scripts könnte so aussehen. Dieses Beispiel definiert einen Bewegungspfad für z.B. ein Bild oder Text: | ||
+ | |||
+ | <code> | ||
+ | procedure OnExpandSlideShow(SlideShowObject: [[ISlideShowObject]]) | ||
+ | begin | ||
+ | var Moveable = SlideShowObject as [[IMoveable]]; | ||
+ | if Moveable = nil then | ||
+ | Exit; // Abbrechen, denn Objekt hat keinen Bewegungspfad | ||
+ | |||
+ | Moveable.SetDefault; // bestehenden Pfad komplett entfernen | ||
+ | var Item: [[ITimeRect]]; | ||
+ | |||
+ | // Erster Pfadpunkt (ist immer vorhanden) | ||
+ | Item := Moveable[0]; | ||
+ | Item.SetBounds(DoubleRect(0.25, 0.25, 0.75, 0.75); // Halber Bildschirm | ||
+ | |||
+ | // Zweiten Pfadpunkt hinzufügen | ||
+ | Item := Moveable.AddItem; | ||
+ | Item.SetBounds(DoubleRect(0.0, 0.0, 1.0, 1.0); // Ganzer Bildschirm | ||
+ | Item.SetTime(SlideShowObject.Duration div 2); // Zeitpunkt, wann der zweite Punkt erreicht sein soll | ||
+ | end; | ||
+ | </code> | ||
[[Kategorie:Scripting-API]] | [[Kategorie:Scripting-API]] |
Aktuelle Version vom 15. September 2012, 19:58 Uhr
Die DiaShow lässt sich mit Scripts stark erweitern. Scripts können sowohl auf das Abspielen Einfluss nehmen aber auch die Benutzeroberfläche erweitern.
Eines vorneweg: Hier geht es tief in die "Eingeweide" der DiaShow. Sie sollten bereits einfache Programmierkenntnisse mitbringen, um mit dieser Funktionalität etwas anfangen zu können.
Wie benutze ich Scripts?
Jedem DiaShow-Objekt kann ein Script angehängt werden, das zu verschiedenen Zeiten zur Ausführung kommt. Ein Script ist letztendlich nur eine Textdatei. Wann welcher Teil eines Scripts ausgeführt wird, wird durch Hooks bestimmt. Ein Hook ist nichts weiter als eine speziell benannte Funktion innerhalb des Scripts. Über die Scripting-Entwicklungsumgebung können Sie einem DiaShow-Objekt ein Script zuordnen bzw. neue Scripts erstellen.
Weiterführende Informationen
- Hooks - Wo/Wann kann ein Script etwas beeinflussen
- DiaShow-Objekte - Welche Elemente der Diashow lassen sich erstellen und ändern
- Sprachreferenz (DelphiWebScript) - Welche Befehle stellt die Scripting-Programmiersprache bereit
- Scripting-Entwicklungsumgebung - Wie werden Scripts erstellt, getestet und debuggt.
- GUI-API - Wie kann eine Benutzeroberfläche erstellt werden
- Alle Seiten zur ScriptingAPI
Beispiel
Ein ganz einfaches Beispiel eines Scripts könnte so aussehen. Dieses Beispiel definiert einen Bewegungspfad für z.B. ein Bild oder Text:
procedure OnExpandSlideShow(SlideShowObject: ISlideShowObject)
begin
var Moveable = SlideShowObject as IMoveable;
if Moveable = nil then
Exit; // Abbrechen, denn Objekt hat keinen Bewegungspfad
Moveable.SetDefault; // bestehenden Pfad komplett entfernen
var Item: ITimeRect;
// Erster Pfadpunkt (ist immer vorhanden)
Item := Moveable[0];
Item.SetBounds(DoubleRect(0.25, 0.25, 0.75, 0.75); // Halber Bildschirm
// Zweiten Pfadpunkt hinzufügen
Item := Moveable.AddItem;
Item.SetBounds(DoubleRect(0.0, 0.0, 1.0, 1.0); // Ganzer Bildschirm
Item.SetTime(SlideShowObject.Duration div 2); // Zeitpunkt, wann der zweite Punkt erreicht sein soll
end;