11import 'package:flutter/cupertino.dart' ;
22
3- class GlassType {
3+ class GlassType implements Comparable < GlassType > {
44 final String name;
55
66 /// A short description of what is the glass, how it is used...
@@ -13,18 +13,31 @@ class GlassType {
1313 );
1414
1515 /// A list of all existing glass types, or at least the ones with an icon associated.
16- static List <GlassType > get glassTypes => [
17- const AnyGlassType (),
18- const GlassType (name: "Cocktail" ),
19- const GlassType (name: "Hurricane" ),
20- const GlassType (name: "Whisky" ),
21- const GlassType (name: "Mug" ),
22- ];
16+ static List <GlassType > get glassTypes {
17+ List <GlassType > glassTypeList = [
18+ const AnyGlassType (),
19+ const GlassType (name: "Cocktail" ),
20+ const GlassType (name: "Hurricane" ),
21+ const GlassType (name: "Whisky" ),
22+ const GlassType (name: "Mug" ),
23+ const GlassType (name: "Wine" ),
24+ const GlassType (name: "Pint" ),
25+ const GlassType (name: "Margarita" ),
26+ const GlassType (name: "sling" ),
27+ const GlassType (name: "tasting" ),
28+ ];
29+ // alphabetical order
30+ glassTypeList.sort ((a, b) => a.compareTo (b));
31+ return glassTypeList;
32+ }
2333
2434 @override
2535 String toString () {
2636 return 'GlassType{name: $name , description: $description }' ;
2737 }
38+
39+ @override
40+ int compareTo (GlassType other) => name.compareTo (other.name);
2841}
2942
3043class AnyGlassType extends GlassType {
0 commit comments