Pour modifier la feuille CSS il suffit simplement de rajouter une classe du même nom que la valeur de la propriété labelStyleName et de changer les propriétés que l'on veut :

.label_button_label{
   
 font-familyVerdana;
    
font-size12px;
    
font-weightbold;
    font-style: italic;
}

A ce niveau on peut se rendre compte qu'il manque la stylisation du rollover sur le bouton par exemple. 
C'est là que rentre en jeu la classe LabelButtonStyle et ses propriétés.

Grâce à l'IoC de VegAS, il est possible de modifier au runtime ses propriétés.

Pour ce faire il suffit de définir dans un fichier eden, par exemple style.eden la classe LabelButtonStyle et de modifier ses propriétés directement dans la définition ou en se servant d'un fichier de config externe (CF. le tutoriel sur le Designe Pattern d'Ekameleon partie C).

Nota: Ne pas oublier de mettre cette classe dans le tableau LinkageInforcer  de l'application si aucune classe dépendante de celle-ci y sont déclarée.

Dans tous les cas si l'IoC fait une erreur au runtime c'est qu'il manque certainement cette classe dans le swf.

Nota2: Pour changer la couleur du texte selon son état il faut veiller à ce que la propriété useTextColor soit bien définit à true (sa valeur par défaut).

  • Le fichier style.eden:

objects =
[
    {
        id         :
"label_button_style" ,
        type       :
"lunas.display.button.LabelButtonStyle" ,
        singleton  :
true ,
        properties :
        [
            { name:"color"             , value:"#801127"     },
            { name:"textDisabledColor" , value:"0xCCCCCC"    },
            { name:"textRollOverColor" , value:"0xE31B3C"    },
            { name:"textSelectedColor" , value:"0x999999"    },
            { name:"styleSheet"        , ref  :"style_sheet" },
            { name:"useTextColor"      , value:true          } 
        ]
     }
] ;

  • Pour terminé, il ne faut pas oublié de cabler cette classe dans le LabelButton :

...
{
    id         : "my_button" ,
    type       : "lunas.display.button.LabelButton" ,
    singleton  : true ,
    lazyInit   : true ,
    properties :
    [
        { name : "label" , locale : "my_button.label"    } ,
        { name : "style" , ref    : "label_button_style" } ,
        { name : "w"     , config : "my_button.w"        } ,
        { name : "x"     , config : "my_button.x"        } ,
        { name : "y"     , config : "my_button.y"        }
    ]
}
...

Voici un exemple en pure flash:
import lunas.display.button.LabelButton ;

import lunas.display.button.LabelButtonStyle ;


import system.serializers.eden.EdenSerializer ;


// custom style
var style:LabelButtonStyle = new LabelButtonStyle() ;

style.color                = 0x801127 ;
style.textDisabledColor    = 0xCCCCCC ;
style.textRollOverColor    = 0xE31B3C ;
style.textSelectedColor    = 0x999999 ;

style.styleSheet.setStyle( "." + style.labelStyleName , { fontFamily:"verdana", fontSize:"14px", fontWeight:"normal" , fontStyle:"italic" } ) ;

// default label button.

var bt1:LabelButton = new LabelButton() ;
bt1.x     = 10 ;
bt1.y     = 10 ;
bt1.label = "Default LabelButton" ;


// cutom label button

var bt2:LabelButton = new LabelButton() ;
bt2.width = 200 ;
bt2.x     = 10 ;
bt2.y     = 30 ;
bt2.label = "Custom LabelButton" ;

bt2.style = style ;

addChild( bt1 ) ;
addChild( bt2 ) ;

Pour conclure, cette technique permet de rendre extrêmement souple l'utilisation des composants de LunAS.
On peut imaginer définir autant de style que l'on veut dans une application et les appliqués sur les boutons que l'on souhaite.

C'est pour ça que si vous êtes intéressé par la puissance du framework d'eKameleon , je vous invite à regarder  et utiliser son framework d'application ASTr'.