You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
fluffychat/lib/pangea/enum/vocab_proficiency_enum.dart

46 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
enum VocabProficiencyEnum { low, medium, high, unk }
extension Copy on VocabProficiencyEnum {
String toolTipString(BuildContext context) {
switch (this) {
case VocabProficiencyEnum.low:
return L10n.of(context)!.low;
case VocabProficiencyEnum.medium:
return L10n.of(context)!.medium;
case VocabProficiencyEnum.high:
return L10n.of(context)!.high;
case VocabProficiencyEnum.unk:
return L10n.of(context)!.unknownProficiency;
}
}
IconData get iconData {
switch (this) {
case VocabProficiencyEnum.low:
return Icons.sentiment_dissatisfied_outlined;
case VocabProficiencyEnum.medium:
return Icons.sentiment_neutral_outlined;
case VocabProficiencyEnum.high:
return Icons.sentiment_satisfied_outlined;
case VocabProficiencyEnum.unk:
return Icons.question_mark_outlined;
}
}
}
class VocabProficiencyUtil {
static VocabProficiencyEnum proficiency(num numeric) {
if (numeric > 1) {
return VocabProficiencyEnum.high;
}
if (numeric < -1) {
return VocabProficiencyEnum.low;
}
return VocabProficiencyEnum.medium;
}
}