Table Of Contents

Previous topic

16. Infrastruktur

This Page

Section author: malte

17. Integration von Maongo in Flex

Um aus MAD übersetzte Maongo Anwendung in eine Flex-Anwendung zu integrieren, steht die MaongoFlexComponent im Paket maongo.flex zur Verfügung. Diese ist eine in Actionscript geschriebene und in MXML verwendbare Flexcomponente, welche als Wrapper für die Maongo Anwendung dient.

17.1. Einbindung der MaongoFlexComponent in MXML

Die Einbindung erfolgt in MXML einfach mittels

<maongo:MaongoFlexComponent id="maongoComponent"/>

Hierfür ist Voraussetzung, das der Namespace maongo wie folgt in der jeweiligen Application bzw. Komponente definiert ist

xmlns:maongo="maongo.flex.*"

Neben den flexinternen Eigenschaften verfügt die Komponente über einige Schnittstellen zur Kommunikation mit bzw. Integration in die umgebende Flexanwendung. Diese sind:

  • maongoSwf - Pfad zum SWf welches geladen werden soll und welches die Presentation beinhaltet
  • setPresentation - zum setzen der abzuspielenden Maongo-Presentation
  • getPresentation - zum Auslesen der derzeit abgespielten Maongo-Presentation
  • loadPresentation - zum Laden einer Maongo-Presentation von einer URL als fertig kompiliertes SWF
  • handleTransmission - ermöglicht das Nutzen der Komponente als Transmissionhandler TBD
  • handleTransmissionError - ermöglicht das Nutzen der Komponente als Transmissionhandler TBD
  • loadTransmission - lädt eine Transmission direkt auf der Presentation TBD
  • handleData - zur Weitergabe von Data an die Maongo-Presentation TBD
  • registerMessageCallback - erlaubt die Weitergabe von Messages aus Maongo an die umliegende Anwendung mittels registrierter Callbacks TBD
  • unregisterMessageCallback - hebt eine Registrierung als Message-Callback auf TBD
  • message - erlaubt es eine Message aus der umliegenden Anwendung an Maongo zu schicken TBD

17.2. Anzeige einer Maongo Presentation in der MaongoFlexComponent

Um eine in ein SWF kompilierte Maongo-Anwendung in der MaongoFlexComponent anzuzeigen, wird der Pfad zum Maongo-SWf an die Komponente übergeben

<maongo:MaongoFlexComponent id="maongoComponent" maongoSwf="maongo_flash.swf" />

Um eine MaongoPresentation im Source-Code in der MaongoFlexComponent anzuzeigen, wird eine Presentation an die Komponente übergeben

var presentation:Presentation = myMadFile.createPresentation();
maongoComponent.setPresentation(presentation);

Die übergebene Presentation wird innerhalb der Komponente initialisiert und abgespielt.

17.3. Laden von Transmissions auf der Komponente und innerhalb der Komponente - TODO

17.4. Weitergabe von Data an die MaongoPresentation - TODO

17.5. Messages - Kommunikation zwischen der MaongoFlexComponent und der umliegenden Flexanwendung

Sofern in einer Flexanwendung die MaongoFlexComponent eingebunden ist, können an diese Nachrichten übermittelt werden. Dies erfolgt mittels

maongoComponent.message("MessageName","hallo","welt");

In der MAD-Datei wird ein entsprechender Action-Trigger wie folgt definiert

<action trigger="MessageName">
        // Action code here
</action>

ab hier TBD

Für den Empfang von Messages aus Maongo muss zunächst ein MessageCallback auf der MaongoFlexComponent registriert werden.

Dies erfolgt mittels

maongoComponent.registerMessageCallback(this,messageCallback,"MessageName");

Über den Parameter MessageName können verschiedene Callbacks für unterschiedliche Messages registriert werden.