Added : RiderCardDrawer

This commit is contained in:
2025-12-05 21:39:00 +01:00
parent d002ac9251
commit 465d795b19
4 changed files with 68 additions and 13 deletions
+4 -4
View File
@@ -16,7 +16,7 @@ class LPTCManager2026 extends Application {
private var services:Services;
private var appController:AppController;
private var mainPanel:MainPanel;
private var dr:MainDrawer;
private var md:MainDrawer;
// private var nav:StackNavigator;
@@ -42,8 +42,8 @@ class LPTCManager2026 extends Application {
mainPanel = new MainPanel();
addChild(mainPanel);
dr = new MainDrawer();
addChild(dr);
md = new MainDrawer();
addChild(md);
model.addEventListener(AppModelLocator.DRAWER_STATE_CHANGE, onDrawerStateChange);
@@ -63,6 +63,6 @@ class LPTCManager2026 extends Application {
}
private function onDrawerStateChange(e:Event):Void {
model.drawerIsOpen ? dr.openDrawer() : dr.closeDrawer();
model.drawerIsOpen ? md.openDrawer() : md.closeDrawer();
}
}
+5 -2
View File
@@ -1,5 +1,6 @@
package components;
import openfl.display.Bitmap;
import openfl.system.ApplicationDomain;
import openfl.system.LoaderContext;
import openfl.display.LoaderInfo;
@@ -55,10 +56,10 @@ class RoundAvatar extends LayoutGroup {
mask = m;
var l:Loader = new Loader();
var lc:LoaderContext = new LoaderContext(true, null);
//var lc:LoaderContext = new LoaderContext(true, null);
// l.load(new URLRequest("https://ui-avatars.com/api/?background=random&size=64"));
//l.load(new URLRequest("https://api.dicebear.com/9.x/pixel-art/png?size=32"));
l.load(new URLRequest("https://lepetittrot.com/lptcm/assets/profile-pictures/pp256/pp_malo.jpeg"), lc);
l.load(new URLRequest("https://lepetittrot.com/lptcm/assets/profile-pictures/pp256/pp_malo.jpeg"));
l.contentLoaderInfo.addEventListener (Event.COMPLETE, onLoadComplete);
addChild(l);
@@ -67,6 +68,8 @@ class RoundAvatar extends LayoutGroup {
private function onLoadComplete(e:Event) {
var l:Loader = cast(e.currentTarget, LoaderInfo).loader;
var bmp:Bitmap = e.currentTarget.content;
bmp.smoothing = true;
l.content.width = l.content.height = avatarSize;
}
+8 -6
View File
@@ -1,15 +1,13 @@
package view;
import feathers.layout.AnchorLayoutData;
import feathers.layout.AnchorLayout;
import feathers.controls.Panel;
import feathers.controls.navigators.StackItem;
import feathers.controls.navigators.StackNavigator;
import feathers.controls.Button;
import openfl.display.Bitmap;
import feathers.skins.RectangleSkin;
import feathers.events.FeathersEvent;
import feathers.layout.AnchorLayout;
import feathers.layout.AnchorLayoutData;
import feathers.skins.RectangleSkin;
import model.Constants;
import feathers.controls.Panel;
import t9.util.ColorTraces.*;
class MainPanel extends Panel {
@@ -17,6 +15,7 @@ class MainPanel extends Panel {
private var mh:MainHeader;
private var mf:MainFooter;
private var sn:StackNavigator;
private var rcd:RiderCardDrawer;
public function new() {
super();
@@ -45,6 +44,9 @@ class MainPanel extends Panel {
sn.rootItemID = "ridersScreen";
addChild(sn);
rcd = new RiderCardDrawer();
addChild(rcd);
}
private function onCreationComplete(event:FeathersEvent):Void {
+50
View File
@@ -0,0 +1,50 @@
package view;
import feathers.controls.Button;
import feathers.controls.Drawer;
import feathers.controls.LayoutGroup;
import feathers.events.FeathersEvent;
import feathers.events.TriggerEvent;
import feathers.layout.VerticalLayout;
import feathers.skins.RectangleSkin;
import model.Constants;
import t9.util.ColorTraces.*;
class RiderCardDrawer extends Drawer {
public static final CLOSE:String = "close";
public static final OPEN:String = "open";
private var closeDrawerButton:Button;
public function new() {
super();
addEventListener(FeathersEvent.CREATION_COMPLETE, onCreationComplete);
}
override private function initialize():Void {
super.initialize();
var d1 = new LayoutGroup();
var vl = new VerticalLayout();
vl.setPadding(10);
vl.horizontalAlign = LEFT;
vl.verticalAlign = TOP;
d1.layout = vl;
closeDrawerButton = new Button();
closeDrawerButton.text = "Close Drawer";
closeDrawerButton.addEventListener(TriggerEvent.TRIGGER, (event) -> {
opened = false;
});
d1.addChild(closeDrawerButton);
overlaySkin = new RectangleSkin(SolidColor( Constants.HERO_COLOR, 1));
drawer = d1;
}
private function onCreationComplete(event:FeathersEvent):Void {
traceBlue(this + " --> onCreationComplete() - w: " + width + " h: " + height );
}
}