mirror of
https://github.com/Iconica-Development/flutter_media_picker.git
synced 2025-05-19 00:43:45 +02:00
56 lines
1.4 KiB
Dart
56 lines
1.4 KiB
Dart
|
import 'package:flutter/material.dart';
|
||
|
import 'package:flutter_form/flutter_form.dart';
|
||
|
import 'package:flutter_media_picker/src/abstracts/media_picker_input.dart';
|
||
|
import 'package:flutter_media_picker/src/media_result.dart';
|
||
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||
|
|
||
|
/// Input for text used by [MediaPicker].
|
||
|
class MediaPickerInputText implements MediaPickerInput {
|
||
|
MediaPickerInputText({
|
||
|
this.label = "Tekst",
|
||
|
this.checkPageSettings,
|
||
|
this.onComplete,
|
||
|
});
|
||
|
|
||
|
@override
|
||
|
String label;
|
||
|
|
||
|
@override
|
||
|
Future<MediaResult> onPressed(BuildContext context) async {
|
||
|
return MediaResult();
|
||
|
}
|
||
|
|
||
|
@override
|
||
|
Future<Widget> displayResult(MediaResult result) async {
|
||
|
return const DisplayText();
|
||
|
}
|
||
|
|
||
|
@override
|
||
|
Map<String, dynamic>? checkPageSettings;
|
||
|
|
||
|
@override
|
||
|
void Function(MediaResult value)? onComplete;
|
||
|
}
|
||
|
|
||
|
class DisplayText extends ConsumerStatefulWidget {
|
||
|
const DisplayText({Key? key}) : super(key: key);
|
||
|
|
||
|
@override
|
||
|
ConsumerState<ConsumerStatefulWidget> createState() => _DisplayTextState();
|
||
|
}
|
||
|
|
||
|
class _DisplayTextState extends ConsumerState<DisplayText> {
|
||
|
final FlutterFormInputController<String> _controller =
|
||
|
FlutterFormInputPlainTextController(
|
||
|
id: 'title',
|
||
|
);
|
||
|
|
||
|
@override
|
||
|
Widget build(BuildContext context) {
|
||
|
return FlutterFormInputPlainText(
|
||
|
label: const Text('Titel'),
|
||
|
controller: _controller,
|
||
|
);
|
||
|
}
|
||
|
}
|