Einzelnen Beitrag anzeigen
Alt 05-11-2009, 17:30   #1 (Permalink)
Lukas78
Neuer User
 
Registriert seit: Oct 2007
Beiträge: 380
Dynamische Icons für FlexMenu

Hallo zusammen!

Habe basierend auf dem IconUtility von Ben Stucki eine Klasse geschrieben, die für das FlexMenu Icons zur Laufzeit laden kann.

public class DynamicMenuIcon extends BitmapAsset

Sie beinhaltet eine static function getIcon, die den Typ Class zurück gibt, sowie man es für die iconFunction benötigt. Da Flex beim erstellen die Klasse parameterlos instanziert, werden die parameter der getIcon function in einem static dictionary gespeichert. Bei der Instanzierung, werden dann, über einen Vergleich mit dem parent Objekt, die entsprechenden Daten wieder aus dem Dictionary ausgelesen.

Momentan ist es nur vorgesehen, dass das an die iconFunction übergebene element ein XML ist, sollte sich aber bei Bedarf relativ schnell abändern lassen.

Verwendungsbeispiele:

1. direkt als iconFunction (keine Größenangaben möglich, Quelle muss im Attribut "iconSource" der Itemnode stehen)

PHP-Code:
//Beispiel node: <submenu11 label="menu 1-1" iconSource="icons/pic_01.jpg"/>
var submenu :Menu myMenuBar.getMenuAt(0);
submenu.iconFunction    DynamicMenuIcon.getIcon
2. in einer iconFunction, hier können dann auch Zielgröße und quellattribut angegeben werden.

PHP-Code:
//Beispiel node: <submenu11 label="menu 1-1" myIconSource="icons/pic_01.jpg"/>
var submenu :Menu myMenuBar.getMenuAt(0);
submenu.iconFunction    generateIcon;

private function 
generateIconnode:XML):Class
{
   return 
DynamicMenuIcon.getIconnode4030"@myIconSource");        

Bugs und Verbesserungsvorschläge bitte hier posten.

Updates kommen dann auch wieder hierhin.

Enjoy
Angehängte Dateien
Dateityp: zip DynamicMenuIcon.zip (971 Bytes, 20x aufgerufen)
Lukas78 ist offline   Mit Zitat antworten