summaryrefslogtreecommitdiff
path: root/lib/screens/level_selection.dart
diff options
context:
space:
mode:
authorOrangerot <purple@orangerot.dev>2025-01-14 17:35:24 +0100
committerOrangerot <purple@orangerot.dev>2025-01-14 17:35:24 +0100
commite030b60c2567af239b81c9a36c502fa22defdc97 (patch)
tree83a7b5ac05220714c1deb18d56c9433900ded0ff /lib/screens/level_selection.dart
parent28d0fe7d8c3a38d7c2ded86c30b549ed6be48f3c (diff)
feat: add comments
Diffstat (limited to 'lib/screens/level_selection.dart')
-rw-r--r--lib/screens/level_selection.dart4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/screens/level_selection.dart b/lib/screens/level_selection.dart
index 7241ad7..5984e65 100644
--- a/lib/screens/level_selection.dart
+++ b/lib/screens/level_selection.dart
@@ -28,6 +28,7 @@ class _LevelSelectionState extends State<LevelSelection> {
loadFolderPath();
}
+ /// gets folder path from persistent storage and updates state with loaded simfiles
Future<void> loadFolderPath() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
final String? stepmaniaCoursesPathSetting =
@@ -44,6 +45,7 @@ class _LevelSelectionState extends State<LevelSelection> {
});
}
+ /// open folder selection dialog and save selected folder in persistent storage
Future<void> selectFolder() async {
await Permission.manageExternalStorage.request();
String? selectedFolder = await FilePicker.platform.getDirectoryPath();
@@ -57,6 +59,7 @@ class _LevelSelectionState extends State<LevelSelection> {
}
}
+ /// load all simfiles from a [directoryPath]
Future<List<Simfile>> listFilesAndFolders(String directoryPath) async {
final directory = Directory(directoryPath);
try {
@@ -86,6 +89,7 @@ class _LevelSelectionState extends State<LevelSelection> {
}
}
+ /// filter stepmaniaCoursesFolders based on [input]
void filterLevels(String input) {
setState(() {
stepmaniaCoursesFoldersFiltered = stepmaniaCoursesFolders