flutter_form_wizard/lib/src/utils/formstate.dart

27 lines
714 B
Dart
Raw Normal View History

2022-11-01 08:23:35 +01:00
// SPDX-FileCopyrightText: 2022 Iconica
//
// SPDX-License-Identifier: BSD-3-Clause
import 'package:flutter/material.dart';
2024-02-06 15:24:53 +01:00
import 'package:flutter_form_wizard/src/utils/form_page_controller.dart';
class FormState extends InheritedWidget {
const FormState({
2024-02-06 15:24:53 +01:00
required super.child,
required this.formController,
2024-02-06 15:24:53 +01:00
super.key,
});
2022-09-28 12:02:40 +02:00
final FlutterFormPageController formController;
static FormState of(BuildContext context) {
2024-02-06 15:24:53 +01:00
var result = context.dependOnInheritedWidgetOfExactType<FormState>();
assert(result != null, 'No FormStat found in context');
return result!;
}
@override
bool updateShouldNotify(FormState oldWidget) =>
formController != oldWidget.formController;
}