buildMirrorItem method

SettingItem buildMirrorItem()

构建镜像模式设置项

Implementation

SettingItem buildMirrorItem() {
  final mirrorNotifier = _wrapMirrorNotifier();
  _wrappedNotifiers.add(mirrorNotifier);

  return SettingItem(
    elementKey: SettingMenuElements.mirrorMode,
    type: SettingItemType.tags,
    title: PlayerI18n.t(PlayerI18nKeys.mirrorMode),
    tags: SettingConstants.mirrorModeOptions,
    tagToDisplayText: (tag) {
      if (tag == null || tag is! int) return '';
      switch (tag) {
        case MirrorMode.MIRROR_MODE_NONE:
          return PlayerI18n.t(PlayerI18nKeys.mirrorNone);
        case MirrorMode.MIRROR_MODE_HORIZONTAL:
          return PlayerI18n.t(PlayerI18nKeys.mirrorHorizontal);
        case MirrorMode.MIRROR_MODE_VERTICAL:
          return PlayerI18n.t(PlayerI18nKeys.mirrorVertical);
        default:
          return '';
      }
    },
    selectedTagListenable: mirrorNotifier,
    onTagTap: (tag) {
      if (tag != null && tag is int) {
        controller.setMirrorMode(tag);
      }
    },
  );
}