From a7ad3581b6b6a68926f72d4949e55fa0ff662e68 Mon Sep 17 00:00:00 2001 From: Christian Findlay <16697547+MelbourneDeveloper@users.noreply.github.com> Date: Sun, 22 Sep 2024 20:33:18 +1000 Subject: [PATCH] sorting --- charts_flutter/example/lib/picker/iterable_extensions.dart | 4 ++++ charts_flutter/example/lib/picker/tag_selection_screen.dart | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 charts_flutter/example/lib/picker/iterable_extensions.dart diff --git a/charts_flutter/example/lib/picker/iterable_extensions.dart b/charts_flutter/example/lib/picker/iterable_extensions.dart new file mode 100644 index 000000000..181b94589 --- /dev/null +++ b/charts_flutter/example/lib/picker/iterable_extensions.dart @@ -0,0 +1,4 @@ +extension IterableExtensions on Iterable { + /// Non mutating sort + List orderBy([int Function(T a, T b)? compare]) => toList()..sort(compare); +} diff --git a/charts_flutter/example/lib/picker/tag_selection_screen.dart b/charts_flutter/example/lib/picker/tag_selection_screen.dart index bde4828c7..61afd77e0 100644 --- a/charts_flutter/example/lib/picker/tag_selection_screen.dart +++ b/charts_flutter/example/lib/picker/tag_selection_screen.dart @@ -1,6 +1,7 @@ import 'package:example/main.dart'; import 'package:example/picker/data.dart'; import 'package:example/picker/full_screen_sample.dart'; +import 'package:example/picker/iterable_extensions.dart'; import 'package:example/picker/tag_item_selector.dart'; import 'package:flutter/material.dart'; @@ -103,7 +104,7 @@ class _TagSelectionScreenState extends State { (tag) => tags.contains(tag), ), ) - .toList(), + .orderBy((a, b) => a.title.compareTo(b.title)), allTags: tagDefinitions.values.toList(), ), );