Section author: malte
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.
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:
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.
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.