header_current_widget.dart 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. import '/components/header_buttons_component_widget.dart';
  2. import '/flutter_flow/flutter_flow_theme.dart';
  3. import '/flutter_flow/flutter_flow_util.dart';
  4. import '/flutter_flow/flutter_flow_widgets.dart';
  5. import 'dart:ui';
  6. import 'package:flutter/material.dart';
  7. import 'package:flutter_spinkit/flutter_spinkit.dart';
  8. import 'package:google_fonts/google_fonts.dart';
  9. import 'package:provider/provider.dart';
  10. import 'header_current_model.dart';
  11. export 'header_current_model.dart';
  12. class HeaderCurrentWidget extends StatefulWidget {
  13. const HeaderCurrentWidget({super.key});
  14. @override
  15. State<HeaderCurrentWidget> createState() => _HeaderCurrentWidgetState();
  16. }
  17. class _HeaderCurrentWidgetState extends State<HeaderCurrentWidget>
  18. with RouteAware {
  19. late HeaderCurrentModel _model;
  20. @override
  21. void setState(VoidCallback callback) {
  22. super.setState(callback);
  23. _model.onUpdate();
  24. }
  25. @override
  26. void initState() {
  27. super.initState();
  28. _model = createModel(context, () => HeaderCurrentModel());
  29. }
  30. @override
  31. void dispose() {
  32. routeObserver.unsubscribe(this);
  33. _model.maybeDispose();
  34. super.dispose();
  35. }
  36. @override
  37. void didUpdateWidget(HeaderCurrentWidget oldWidget) {
  38. super.didUpdateWidget(oldWidget);
  39. _model.widget = widget;
  40. }
  41. @override
  42. void didChangeDependencies() {
  43. super.didChangeDependencies();
  44. final route = DebugModalRoute.of(context);
  45. if (route != null) {
  46. routeObserver.subscribe(this, route);
  47. }
  48. debugLogGlobalProperty(context);
  49. }
  50. @override
  51. void didPopNext() {
  52. if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
  53. setState(() => _model.isRouteVisible = true);
  54. debugLogWidgetClass(_model);
  55. }
  56. }
  57. @override
  58. void didPush() {
  59. if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
  60. setState(() => _model.isRouteVisible = true);
  61. debugLogWidgetClass(_model);
  62. }
  63. }
  64. @override
  65. void didPop() {
  66. _model.isRouteVisible = false;
  67. }
  68. @override
  69. void didPushNext() {
  70. _model.isRouteVisible = false;
  71. }
  72. @override
  73. Widget build(BuildContext context) {
  74. DebugFlutterFlowModelContext.maybeOf(context)
  75. ?.parentModelCallback
  76. ?.call(_model);
  77. return PreferredSize(
  78. preferredSize: Size.fromHeight(12.0),
  79. child: AppBar(
  80. backgroundColor: Colors.white,
  81. automaticallyImplyLeading: true,
  82. leading: Row(
  83. mainAxisSize: MainAxisSize.max,
  84. children: [
  85. Expanded(
  86. child: wrapWithModel(
  87. model: _model.headerButtonsComponentModel,
  88. updateCallback: () => safeSetState(() {}),
  89. child: Builder(builder: (_) {
  90. return DebugFlutterFlowModelContext(
  91. rootModel: _model.rootModel,
  92. child: HeaderButtonsComponentWidget(),
  93. );
  94. }),
  95. ),
  96. ),
  97. ],
  98. ),
  99. title: Padding(
  100. padding: EdgeInsetsDirectional.fromSTEB(0.0, 2.0, 0.0, 2.0),
  101. child: ClipRRect(
  102. borderRadius: BorderRadius.circular(8.0),
  103. child: Image.asset(
  104. 'assets/images/logo800px.png',
  105. width: MediaQuery.sizeOf(context).width * 0.55,
  106. fit: BoxFit.contain,
  107. ),
  108. ),
  109. ),
  110. actions: [],
  111. centerTitle: true,
  112. toolbarHeight: MediaQuery.sizeOf(context).height * 0.12,
  113. elevation: 0.0,
  114. ),
  115. );
  116. }
  117. }