Skip to content

Commit 1edeb6a

Browse files
create MergeSortPage
1 parent df8f865 commit 1edeb6a

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import 'package:algorithm_visualizer/core/resources/strings_manager.dart';
2+
import 'package:algorithm_visualizer/features/sorting/base/view/sorting_page.dart';
3+
import 'package:algorithm_visualizer/features/sorting/base/view_model/sorting_notifier.dart';
4+
import 'package:algorithm_visualizer/features/sorting/merge/view_model/merge_sort_notifier.dart';
5+
import 'package:flutter/material.dart';
6+
import 'package:flutter_riverpod/flutter_riverpod.dart';
7+
8+
final _notifierProvider = StateNotifierProvider<SortingNotifier, SortingNotifierState>(
9+
(ref) => MergeSortNotifier(),
10+
);
11+
12+
class MergeSortPage extends ConsumerStatefulWidget {
13+
const MergeSortPage({super.key});
14+
15+
@override
16+
ConsumerState<MergeSortPage> createState() => _MergeSortPageState();
17+
}
18+
19+
class _MergeSortPageState extends ConsumerState<MergeSortPage> {
20+
@override
21+
void deactivate() {
22+
ref.invalidate(_notifierProvider); // deletes current instance and resets
23+
super.deactivate();
24+
}
25+
26+
@override
27+
Widget build(BuildContext context) {
28+
return SortingPage(instance: _notifierProvider, title: StringsManager.mergeSort);
29+
}
30+
}

0 commit comments

Comments
 (0)