Add pdf rendering

This commit is contained in:
2023-02-22 18:26:07 +01:00
parent 8f467968b0
commit 1a13dc8710
8 changed files with 189 additions and 17 deletions

View File

@@ -6,8 +6,9 @@ import 'package:path/path.dart' as p;
class Sheet {
final String author;
final String name;
final String path;
Sheet(this.author, this.name);
Sheet(this.author, this.name, this.path);
}
Future<List<Sheet>> loadSheetsSorted() async {
@@ -19,17 +20,18 @@ Future<List<Sheet>> loadSheetsSorted() async {
Future<List<Sheet>> _loadSheets() async {
// TODO: Handle directory not found
var dir = Directory("/home/julian/Nextcloud/jhome/Klavier-Noten/");
if (!dir.existsSync()) {
throw Exception("Folder does not exist");
}
final List<Sheet> sheets = List.empty(growable: true);
if (dir.existsSync()) {
await for (final FileSystemEntity x in dir.list()) {
if (x is Directory) {
var authorName = p.basename(x.path);
await for (final FileSystemEntity a in x.list()) {
if (a is File) {
var sheetName = p.basenameWithoutExtension(a.path);
sheetName = sheetName.capitalize();
sheets.add(Sheet(authorName, sheetName));
}
await for (final FileSystemEntity x in dir.list()) {
if (x is Directory) {
var authorName = p.basename(x.path);
await for (final FileSystemEntity a in x.list()) {
if (a is File) {
var sheetName = p.basenameWithoutExtension(a.path);
sheetName = sheetName.capitalize();
sheets.add(Sheet(authorName, sheetName, a.path));
}
}
}