added proper editor buttons to prj card, APP BROKEN HERE.
This commit is contained in:
@@ -1,37 +1,47 @@
|
||||
import "package:flutter/material.dart";
|
||||
import "package:prod/models/editor.dart";
|
||||
import "package:prod/models/globalModel.dart";
|
||||
import "package:prod/models/project.dart";
|
||||
import "package:provider/provider.dart";
|
||||
import "package:yaru/yaru.dart";
|
||||
|
||||
class EditorSelector extends StatelessWidget {
|
||||
const EditorSelector(this.turns, {super.key});
|
||||
const EditorSelector(this.turns, this.id, {super.key});
|
||||
final int id;
|
||||
final int turns;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Row(
|
||||
children: [
|
||||
RotatedBox(
|
||||
child: Icon(Icons.rounded_corner_rounded),
|
||||
quarterTurns: this.turns,
|
||||
),
|
||||
YaruPopupMenuButton<Editor>(
|
||||
child: Text("Nullie"),
|
||||
onSelected: (a) {
|
||||
Provider.of<GlobalModel>(context, listen: false);
|
||||
print("$a");
|
||||
},
|
||||
itemBuilder: (context) {
|
||||
return Provider.of<GlobalModel>(
|
||||
context,
|
||||
listen: false,
|
||||
).editors.map((a) {
|
||||
return PopupMenuItem<Editor>(value: a, child: Text("${a.name}"));
|
||||
}).toList();
|
||||
},
|
||||
),
|
||||
],
|
||||
GlobalModel gm = Provider.of<GlobalModel>(context);
|
||||
Project prj = gm.nthPrj(id);
|
||||
return DropdownMenu(
|
||||
enableSearch: true,
|
||||
enableFilter: true,
|
||||
initialSelection: prj.getEditor(turns),
|
||||
leadingIcon: RotatedBox(
|
||||
child: Icon(Icons.rounded_corner_rounded),
|
||||
quarterTurns: turns,
|
||||
),
|
||||
onSelected: (a) {
|
||||
print("$a");
|
||||
prj.setEditor(turns, a);
|
||||
gm.updatePrj(id, prj);
|
||||
},
|
||||
|
||||
dropdownMenuEntries: Provider.of<GlobalModel>(context).editors.map((a) {
|
||||
return DropdownMenuEntry(
|
||||
label: a.name,
|
||||
labelWidget: Column(
|
||||
crossAxisAlignment: .start,
|
||||
mainAxisAlignment: .center,
|
||||
children: [
|
||||
Text("${a.name}", style: TextStyle(fontSize: 20)),
|
||||
Text("${a.commandTemplate}", style: TextStyle(fontSize: 12)),
|
||||
],
|
||||
),
|
||||
value: a.id,
|
||||
);
|
||||
}).toList(),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user