package view; import feathers.skins.RectangleSkin; import com.adobe.cairngorm.control.CairngormEvent; import com.adobe.cairngorm.control.CairngormEventDispatcher; import components.IconButton; import control.AppController; import feathers.controls.Button; import feathers.controls.Label; import feathers.controls.LayoutGroup; import feathers.events.FeathersEvent; import feathers.events.TriggerEvent; import feathers.layout.HorizontalLayout; import feathers.text.TextFormat; import model.Constants; import openfl.Assets; import openfl.text.Font; import t9.util.ColorTraces.*; class MainHeader extends LayoutGroup { private var btn1:Button; private var lbl1:Label; public function new() { super(); addEventListener(FeathersEvent.CREATION_COMPLETE, onCreationComplete); } override private function initialize():Void { super.initialize(); final sw:Int = stage.stageWidth; final sh:Int = stage.stageHeight; final headerWidth = Std.int(sw * Constants.MAIN_HEADER_WIDTH_RATIO); final headerHeight = Std.int(sh * Constants.MAIN_HEADER_HEIGHT_RATIO); autoSizeMode = CONTENT; backgroundSkin = new RectangleSkin(SolidColor(Constants.HERO_COLOR, 1)); variant = LayoutGroup.VARIANT_TOOL_BAR; // Layout settings var l:HorizontalLayout = new HorizontalLayout(); l.paddingLeft = l.paddingRight = Std.int(headerHeight * .3); l.paddingTop = l.paddingBottom = Std.int(headerHeight * .2); l.verticalAlign = MIDDLE; layout = l; // Menu button var svgIconString:String = Assets.getText("vector/menu_icon_black.svg"); btn1 = new IconButton(svgIconString, Constants.MAIN_COLOR3); btn1.addEventListener(TriggerEvent.TRIGGER, onMenuButtonPress); addChild(btn1); // Title label lbl1 = new Label(); //lb1.backgroundSkin = new RectangleSkin(SolidColor(Constants.ACCENT_COLOR2, 1)); //lb1.verticalAlign = VerticalAlign.TOP; lbl1.text = Constants.MENU_ITEM_0_STRING; lbl1.embedFonts = true; var fnt:Font = Assets.getFont(Constants.MONTSERRAT_MEDIUM_500); lbl1.textFormat = new TextFormat(fnt.fontName, Std.int(headerHeight * .4), Constants.MAIN_COLOR3); addChild(lbl1); } private function onCreationComplete(event:FeathersEvent):Void { traceBlue(this + " --> onCreationComplete()"); } function onMenuButtonPress(e:TriggerEvent):Void { var e:CairngormEvent = new CairngormEvent(AppController.OPEN_DRAWER_EVENT); CairngormEventDispatcher.getInstance().dispatchEvent(e); } }