IBlackboxContainer (BlackboxContainer-Objekt)

1. Definition

Das BlackboxContainer-Objekt ist vom Typ IBlackboxContainer und leitet sich von ISlideShowObject ab. Es fungiert als visueller Container für andere DiaShow-Objekte. In der Funktionsweise agiert er nahezu identisch wie das Kapitelobjekt. Allerdings ist es für den Einsatz in Blackbox-Objekten gedacht. So dienen sie dazu, Inhalte der Effekte zu verwalten. Sie können vom Endanwender nicht aus den Blackbox-Vorlagen entfernt werden. Ebenso können sie verbieten, dass deren Inhalte gelöscht werden.

Optisch unterscheiden sie sich von den normalen Kapiteln, indem sie keinen eigenen Hintergrund haben. Sie übernehmen den ihres Elternobjektes, sind also transparent.

IBlackboxContainer inherits from ISlideShowObject
  function GetCaption: string;
  procedure SetCaption (const Value: string);
  function GetCanDeleteChildren: Boolean;
  procedure SetCanDeleteChildren (const Value: Boolean);
end;

2. Methoden

  • Objekt-Erzeugung

    function CreateChapterObject: IChapter
  • Getter und Setter für Namen des Kapitelobjektes
    function GetCaption: string;
    procedure SetCaption (const Value: string);
  • Getter und Setter für die Erlaubnis, dass die eigenen Kindelemente gelöscht werden können oder nicht. Ist der Wert nicht ausdrücklich gesetzt, ist das Löschen des Inhalts standardmäßig verboten.
    function GetCanDeleteChildren: Boolean;
    procedure SetCanDeleteChildren (const Value: Boolean);

3. Beispiel

Als Beispiel kann man sich einen Masken-Effekt vorstellen. Dieser Effekt ist natürlich in einer Blackbox-Vorlage versteckt. Diese enthält nun zwei wichtige Spuren: Die für den Inhalt (worauf wird die Maske angewendet) und die für die Maske selbst, die vermutlich auch ein Bild ist. Beides ist nun als BlackboxContainer-Objekt modelliert. In der Inhaltsspur kann der Endanwender problemlos agieren. Doch die Maske sollte natürlich nicht veränderbar sein, da dadurch der Effekt unter Umständen schaden nehmen könnte. Daher wird hier der Zugriff gesperrt.