header_current_widget.dart 3.2 KB

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