diff --git a/project.xml b/project.xml
index 0d96aab..088335b 100644
--- a/project.xml
+++ b/project.xml
@@ -31,6 +31,6 @@
-
+
\ No newline at end of file
diff --git a/src/LPTCManager2026.hx b/src/LPTCManager2026.hx
index 2a2563a..d1d1f19 100644
--- a/src/LPTCManager2026.hx
+++ b/src/LPTCManager2026.hx
@@ -1,3 +1,7 @@
+import control.NekoDrawerEvent;
+import com.adobe.cairngorm.control.CairngormEvent;
+import components.NekoDrawer;
+import feathers.controls.Drawer;
import control.AppController;
import business.Services;
import model.AppModelLocator;
@@ -25,6 +29,7 @@ class LPTCManager2026 extends Application {
private var services:Services;
private var appController:AppController;
private var mainPanel:MainPanel;
+ private var dr:NekoDrawer;
// private var nav:StackNavigator;
@@ -48,6 +53,10 @@ class LPTCManager2026 extends Application {
mainPanel = new MainPanel();
addChild(mainPanel);
+ dr = new NekoDrawer();
+ dr.addEventListener(NekoDrawerEvent.STATUS_CHANGE, onDrawerStatusChange);
+ addChild(dr);
+
/*mainPanel = new Panel();
mainPanel.autoSizeMode = STAGE;
mainPanel.backgroundSkin = new NekoRectangle(Constants.MAIN_COLOR3);
@@ -106,7 +115,12 @@ class LPTCManager2026 extends Application {
}
private function onCreationComplete(event:FeathersEvent):Void {
- traceBlue(this + " --> onCreationComplete()");
+ traceBlue("Application --> onCreationComplete()");
loadRiders();
}
+
+ private function onDrawerStatusChange(e:NekoDrawerEvent):Void
+ {
+ trace("ALO ? " + e.openDrawer);
+ }
}
diff --git a/src/command/NekoDrawerCommand.hx b/src/command/NekoDrawerCommand.hx
new file mode 100644
index 0000000..a768e6a
--- /dev/null
+++ b/src/command/NekoDrawerCommand.hx
@@ -0,0 +1,15 @@
+package command;
+
+import com.adobe.cairngorm.commands.ICommand;
+import com.adobe.cairngorm.control.CairngormEvent;
+import control.NekoDrawerEvent;
+import model.AppModelLocator;
+
+class NekoDrawerCommand implements ICommand {
+ private var model = AppModelLocator.getInstance();
+
+ public function execute(e:CairngormEvent):Void {
+ var e:NekoDrawerEvent = cast(e, NekoDrawerEvent);
+ //trace("OpenDrawer ? : " + e.openDrawer);
+ }
+}
diff --git a/src/components/NekoDrawer.hx b/src/components/NekoDrawer.hx
new file mode 100644
index 0000000..830728b
--- /dev/null
+++ b/src/components/NekoDrawer.hx
@@ -0,0 +1,57 @@
+package components;
+
+import feathers.events.TriggerEvent;
+import feathers.controls.Button;
+import feathers.layout.VerticalLayout;
+import feathers.controls.LayoutGroup;
+import feathers.events.FeathersEvent;
+import t9.util.ColorTraces.*;
+import feathers.controls.Drawer;
+
+class NekoDrawer extends Drawer {
+
+ private var openDrawerButton:Button;
+ private var closeDrawerButton:Button;
+ private var coucou:Bool;
+
+ public function new() {
+ super();
+ addEventListener(FeathersEvent.CREATION_COMPLETE, onCreationComplete);
+ }
+
+ override private function initialize():Void {
+ super.initialize();
+
+ var c1 = new LayoutGroup();
+ var contentLayout = new VerticalLayout();
+ contentLayout.horizontalAlign = CENTER;
+ contentLayout.verticalAlign = MIDDLE;
+ c1.layout = contentLayout;
+ openDrawerButton = new Button();
+ openDrawerButton.text = "Open Drawer";
+ openDrawerButton.addEventListener(TriggerEvent.TRIGGER, (event) -> {
+ opened = true;
+ });
+ c1.addChild(openDrawerButton);
+
+ content = c1;
+
+ var d1 = new LayoutGroup();
+ var drawerLayout = new VerticalLayout();
+ drawerLayout.horizontalAlign = CENTER;
+ drawerLayout.verticalAlign = MIDDLE;
+ d1.layout = drawerLayout;
+ closeDrawerButton = new Button();
+ closeDrawerButton.text = "Close Drawer";
+ closeDrawerButton.addEventListener(TriggerEvent.TRIGGER, (event) -> {
+ opened = false;
+ });
+ d1.addChild(closeDrawerButton);
+
+ drawer = d1;
+ }
+
+ private function onCreationComplete(event:FeathersEvent):Void {
+ traceBlue(this + " --> onCreationComplete()");
+ }
+}
diff --git a/src/components/NekoIconButton.hx b/src/components/NekoIconButton.hx
index 65b93b5..57d56ba 100644
--- a/src/components/NekoIconButton.hx
+++ b/src/components/NekoIconButton.hx
@@ -5,18 +5,16 @@ import openfl.display.BitmapData;
import feathers.controls.Button;
import t9.util.ColorTraces.*;
-class NekoIconButton extends Button{
+class NekoIconButton extends Button {
+ private var bmp:Bitmap;
- private var bmp:Bitmap;
+ public function new(pSkin:BitmapData, pX:Int = 0, pY:Int = 0, pWidth:Int = 100, pHeight:Int = 100) {
+ super();
- public function new(pSkin:BitmapData, pX:Int = 0, pY:Int = 0, pWidth:Int = 100, pHeight:Int = 100) {
-
- super();
-
- bmp = new Bitmap(pSkin);
- backgroundSkin = bmp;
- bmp.width = pWidth;
- bmp.height = pHeight;
- bmp.smoothing = true;
- }
-}
\ No newline at end of file
+ bmp = new Bitmap(pSkin);
+ backgroundSkin = bmp;
+ bmp.width = pWidth;
+ bmp.height = pHeight;
+ bmp.smoothing = true;
+ }
+}
diff --git a/src/control/AppController.hx b/src/control/AppController.hx
index db84798..6a6c5a6 100644
--- a/src/control/AppController.hx
+++ b/src/control/AppController.hx
@@ -1,13 +1,17 @@
package control;
+import command.NekoDrawerCommand;
+import components.NekoDrawer;
import command.LoadRidersCommand;
import com.adobe.cairngorm.control.FrontController;
class AppController extends FrontController {
public static final LOAD_RIDERS_EVENT = "loadRidersEvent";
+ public static final NEKO_DRAWER_EVENT = "nekoDrawerEvent";
public function new() {
super();
addCommand(AppController.LOAD_RIDERS_EVENT, LoadRidersCommand);
+ addCommand(AppController.NEKO_DRAWER_EVENT, NekoDrawerCommand);
}
}
diff --git a/src/control/NekoDrawerEvent.hx b/src/control/NekoDrawerEvent.hx
new file mode 100644
index 0000000..21482fa
--- /dev/null
+++ b/src/control/NekoDrawerEvent.hx
@@ -0,0 +1,14 @@
+package control;
+
+import com.adobe.cairngorm.control.CairngormEvent;
+
+class NekoDrawerEvent extends CairngormEvent {
+
+ public static final STATUS_CHANGE:String = "statusChange";
+ public var openDrawer:Bool;
+
+ public function new(pOpenDrawer:Bool) {
+ super(AppController.NEKO_DRAWER_EVENT);
+ openDrawer = pOpenDrawer;
+ }
+}
\ No newline at end of file
diff --git a/src/view/MainHeader.hx b/src/view/MainHeader.hx
index 93defb2..77b2660 100644
--- a/src/view/MainHeader.hx
+++ b/src/view/MainHeader.hx
@@ -1,5 +1,9 @@
package view;
+import control.NekoDrawerEvent;
+import components.NekoDrawer;
+import com.adobe.cairngorm.control.CairngormEvent;
+import com.adobe.cairngorm.control.CairngormEventDispatcher;
import components.NekoIconButton;
import openfl.display.Bitmap;
import feathers.events.TriggerEvent;
@@ -75,8 +79,9 @@ class MainHeader extends LayoutGroup {
traceBlue(this + " --> onCreationComplete()");
}
- function onDBtnPress(event:TriggerEvent):Void {
- var button = cast(event.currentTarget, Button);
- trace("button triggered: " + button.text);
+ function onDBtnPress(e:TriggerEvent):Void {
+ //var button = cast(e.currentTarget, NekoIconButton);
+ var e = new NekoDrawerEvent(true);
+ CairngormEventDispatcher.getInstance().dispatchEvent(e);
}
}
\ No newline at end of file