implemented editor selector
All checks were successful
Build CI / AMD64 Build (push) Successful in 2m1s
Build CI / ARM64 Build (push) Successful in 6m53s

This commit is contained in:
2026-02-26 20:40:17 +05:30
parent d3a00dc394
commit 50c52b7619
3 changed files with 41 additions and 12 deletions

View File

@@ -6,10 +6,10 @@ class Project {
final String name;
final String language;
final File path;
final Editor? e0;
final Editor? e1;
final Editor? e2;
final Editor? e3;
final String? e0;
final String? e1;
final String? e2;
final String? e3;
final bool isGit;
Project(
@@ -60,10 +60,10 @@ class Project {
}
factory Project.fromJson(Map<String, dynamic> data) {
final Editor? e0 = data["e0"];
final Editor? e1 = data["e1"];
final Editor? e2 = data["e2"];
final Editor? e3 = data["e3"];
final String? e0 = data["e0"];
final String? e1 = data["e1"];
final String? e2 = data["e2"];
final String? e3 = data["e3"];
return Project(
data["name"] as String,
data["language"] as String,

View File

@@ -3,6 +3,7 @@ import "dart:io";
import "package:flutter/material.dart";
import "package:prod/models/globalModel.dart";
import "package:prod/models/project.dart";
import "package:prod/widgets/editorSelector.dart";
import "package:provider/provider.dart";
class ManageProject extends StatelessWidget {
@@ -77,7 +78,19 @@ class ManageProject extends StatelessWidget {
),
),
),
SliverList.list(children: [Row(children: [])]),
SliverList.list(
children: [
Row(
mainAxisAlignment: .spaceEvenly,
children: [
EditorSelector(0),
EditorSelector(1),
EditorSelector(2),
EditorSelector(3),
],
),
],
),
SliverList.list(
children: [

View File

@@ -1,9 +1,11 @@
import "package:flutter/material.dart";
import "package:prod/models/editor.dart";
import "package:prod/models/globalModel.dart";
import "package:provider/provider.dart";
import "package:yaru/yaru.dart";
class Editorselector extends StatelessWidget {
const Editorselector(this.turns, {super.key});
class EditorSelector extends StatelessWidget {
const EditorSelector(this.turns, {super.key});
final int turns;
@override
@@ -14,7 +16,21 @@ class Editorselector extends StatelessWidget {
child: Icon(Icons.rounded_corner_rounded),
quarterTurns: this.turns,
),
// YaruPopupMenuButton<Editor>(child: ,),
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();
},
),
],
);
}