opt: 字幕类别补充

This commit is contained in:
guozhigq
2024-06-19 23:17:36 +08:00
parent c6c4afd359
commit 08e5871bd6
2 changed files with 64 additions and 35 deletions

View File

@ -11,6 +11,12 @@ enum SubtitleType {
enUS, enUS,
// 中文繁体 // 中文繁体
zhTW, zhTW,
//
en,
//
pt,
//
es,
} }
extension SubtitleTypeExtension on SubtitleType { extension SubtitleTypeExtension on SubtitleType {
@ -28,6 +34,12 @@ extension SubtitleTypeExtension on SubtitleType {
return '英文(美国)'; return '英文(美国)';
case SubtitleType.zhTW: case SubtitleType.zhTW:
return '中文(繁体)'; return '中文(繁体)';
case SubtitleType.en:
return '英文';
case SubtitleType.pt:
return '葡萄牙语';
case SubtitleType.es:
return '西班牙语';
} }
} }
} }
@ -47,6 +59,12 @@ extension SubtitleIdExtension on SubtitleType {
return 'en-US'; return 'en-US';
case SubtitleType.zhTW: case SubtitleType.zhTW:
return 'zh-TW'; return 'zh-TW';
case SubtitleType.en:
return 'en';
case SubtitleType.pt:
return 'pt';
case SubtitleType.es:
return 'es';
} }
} }
} }
@ -66,6 +84,12 @@ extension SubtitleCodeExtension on SubtitleType {
return 5; return 5;
case SubtitleType.zhTW: case SubtitleType.zhTW:
return 6; return 6;
case SubtitleType.en:
return 7;
case SubtitleType.pt:
return 8;
case SubtitleType.es:
return 9;
} }
} }
} }

View File

@ -433,7 +433,8 @@ class _HeaderControlState extends State<HeaderControl> {
return AlertDialog( return AlertDialog(
title: const Text('选择字幕'), title: const Text('选择字幕'),
contentPadding: const EdgeInsets.fromLTRB(0, 12, 0, 18), contentPadding: const EdgeInsets.fromLTRB(0, 12, 0, 18),
content: StatefulBuilder(builder: (context, StateSetter setState) { content: StatefulBuilder(
builder: (context, StateSetter setState) {
return len == 0 return len == 0
? const SizedBox( ? const SizedBox(
height: 60, height: 60,
@ -441,7 +442,8 @@ class _HeaderControlState extends State<HeaderControl> {
child: Text('没有字幕'), child: Text('没有字幕'),
), ),
) )
: Column( : SingleChildScrollView(
child: Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
RadioListTile( RadioListTile(
@ -461,14 +463,17 @@ class _HeaderControlState extends State<HeaderControl> {
groupValue: tempThemeValue, groupValue: tempThemeValue,
onChanged: (value) { onChanged: (value) {
tempThemeValue = value!; tempThemeValue = value!;
widget.controller?.toggleSubtitle(value); widget.controller
?.toggleSubtitle(value);
Get.back(); Get.back();
}, },
)) ))
.toList(), .toList(),
], ],
),
); );
}), },
),
); );
}); });
} }