adguard-home-manager/lib/widgets/confirm_action_modal.dart
2024-09-11 18:13:26 +02:00

59 lines
No EOL
1.4 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class ConfirmActionModal extends StatelessWidget {
final IconData icon;
final String title;
final String message;
final void Function() onConfirm;
const ConfirmActionModal({
super.key,
required this.icon,
required this.title,
required this.message,
required this.onConfirm
});
@override
Widget build(BuildContext context) {
return AlertDialog(
title: Column(
children: [
Icon(
icon,
size: 24,
color: Theme.of(context).listTileTheme.iconColor
),
const SizedBox(height: 16),
Text(
title,
style: TextStyle(
fontSize: 24,
color: Theme.of(context).colorScheme.onSurface
),
)
],
),
content: Text(
message,
style: TextStyle(
color: Theme.of(context).colorScheme.onSurface
),
),
actions: [
TextButton(
onPressed: () => Navigator.pop(context),
child: Text(AppLocalizations.of(context)!.cancel)
),
TextButton(
onPressed: () {
onConfirm();
Navigator.pop(context);
},
child: Text(AppLocalizations.of(context)!.confirm)
),
],
);
}
}