ente/lib/photo_loader.dart

35 lines
810 B
Dart
Raw Normal View History

2020-03-27 19:54:24 +00:00
import 'package:flutter/material.dart';
2020-03-27 16:07:55 +00:00
import 'package:logger/logger.dart';
import 'package:myapp/db/db_helper.dart';
import 'package:myapp/models/photo.dart';
2020-03-27 19:54:24 +00:00
class PhotoLoader extends ChangeNotifier {
2020-03-27 16:07:55 +00:00
final logger = Logger();
2020-03-28 18:18:27 +00:00
final _photos = List<Photo>();
2020-04-13 15:01:27 +00:00
2020-03-27 19:54:24 +00:00
PhotoLoader._privateConstructor();
static final PhotoLoader instance = PhotoLoader._privateConstructor();
2020-04-13 15:01:27 +00:00
List<Photo> get photos {
2020-03-27 16:07:55 +00:00
return _photos;
}
2020-04-13 15:01:27 +00:00
Future<bool> loadPhotos() async {
2020-03-27 16:07:55 +00:00
DatabaseHelper db = DatabaseHelper.instance;
2020-03-28 18:18:27 +00:00
var photos = await db.getAllPhotos();
2020-04-13 15:01:27 +00:00
2020-03-28 18:18:27 +00:00
_photos.clear();
_photos.addAll(photos);
2020-04-13 15:01:27 +00:00
2020-03-27 16:07:55 +00:00
logger.i("Imported photo size: " + _photos.length.toString());
2020-04-13 15:01:27 +00:00
return true;
2020-03-27 16:07:55 +00:00
}
2020-03-27 19:54:24 +00:00
void reloadPhotos() async {
await loadPhotos();
logger.i("Reloading...");
notifyListeners();
}
2020-04-13 15:01:27 +00:00
}