mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-05-31 16:18:22 +08:00
use ValueGetter
Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
@@ -323,7 +323,7 @@ Future<void> showImportExportDialog<T>(
|
||||
BuildContext context, {
|
||||
required String title,
|
||||
String? label,
|
||||
required String Function() toJson,
|
||||
required ValueGetter<String> toJson,
|
||||
required FutureOr<bool> Function(T json) fromJson,
|
||||
}) => showDialog(
|
||||
context: context,
|
||||
|
||||
@@ -30,8 +30,8 @@ sealed class SettingsModel {
|
||||
class NormalModel extends SettingsModel {
|
||||
@override
|
||||
final String? title;
|
||||
final StringGetter? getTitle;
|
||||
final StringGetter? getSubtitle;
|
||||
final ValueGetter<String>? getTitle;
|
||||
final ValueGetter<String>? getSubtitle;
|
||||
final Widget Function()? getTrailing;
|
||||
final void Function(BuildContext context, void Function() setState)? onTap;
|
||||
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
import 'package:PiliPlus/common/widgets/flutter/list_tile.dart';
|
||||
import 'package:flutter/material.dart' hide ListTile;
|
||||
|
||||
typedef StringGetter = String Function();
|
||||
|
||||
class NormalItem extends StatefulWidget {
|
||||
final String? title;
|
||||
final StringGetter? getTitle;
|
||||
final ValueGetter<String>? getTitle;
|
||||
final String? subtitle;
|
||||
final StringGetter? getSubtitle;
|
||||
final ValueGetter<String>? getSubtitle;
|
||||
final Widget? leading;
|
||||
final Widget Function()? getTrailing;
|
||||
final void Function(BuildContext context, void Function() setState)? onTap;
|
||||
|
||||
@@ -5,7 +5,7 @@ typedef PopupMenuItemSelected<T> = bool Function(T value);
|
||||
|
||||
class PopupMenuText<T> extends StatelessWidget {
|
||||
final String title;
|
||||
final T Function() value;
|
||||
final ValueGetter<T> value;
|
||||
final PopupMenuItemSelected<T> onSelected;
|
||||
final PopupMenuItemBuilder<T> itemBuilder;
|
||||
final String Function(T) getSelectTitle;
|
||||
|
||||
@@ -28,8 +28,8 @@ class PlayerFocus extends StatelessWidget {
|
||||
final PlPlayerController plPlayerController;
|
||||
final CommonIntroController? introController;
|
||||
final VoidCallback onSendDanmaku;
|
||||
final bool Function()? canPlay;
|
||||
final bool Function()? onSkipSegment;
|
||||
final ValueGetter<bool>? canPlay;
|
||||
final ValueGetter<bool>? onSkipSegment;
|
||||
|
||||
static bool _shouldHandle(LogicalKeyboardKey logicalKey) {
|
||||
return logicalKey == LogicalKeyboardKey.tab ||
|
||||
|
||||
Reference in New Issue
Block a user