From 6fa8145f533ac4e2c91ad9267957da607cbf0dbc Mon Sep 17 00:00:00 2001 From: Thomas Fransolet Date: Thu, 1 Jul 2021 17:05:47 +0200 Subject: [PATCH] Add loading animation --- assets/animations/MDLF_animation.flr | Bin 0 -> 63946 bytes lib/Components/image_input_container.dart | 8 +++++- lib/Components/loading.dart | 22 +++++++++++++++ lib/Components/rounded_input_field.dart | 2 +- lib/Components/upload_image_container.dart | 8 +++++- .../Slider/listView_card_image.dart | 10 +++---- .../Section/section_detail_screen.dart | 12 +++++++-- .../configuration_detail_screen.dart | 17 +++++++++--- .../Configurations/configurations_screen.dart | 9 ++++++- .../Devices/change_device_info_modal.dart | 8 +++++- lib/Screens/Devices/devices_screen.dart | 8 +++++- lib/Screens/Resources/resources_screen.dart | 8 +++++- pubspec.lock | 25 +++++++++++------- pubspec.yaml | 7 ++--- 14 files changed, 115 insertions(+), 29 deletions(-) create mode 100644 assets/animations/MDLF_animation.flr create mode 100644 lib/Components/loading.dart diff --git a/assets/animations/MDLF_animation.flr b/assets/animations/MDLF_animation.flr new file mode 100644 index 0000000000000000000000000000000000000000..4009ffb1c1c042eb881a355a463b309a2c86ccc3 GIT binary patch literal 63946 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

^zx>B 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 { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.1, + child: Loading() + ) + ); } } ); diff --git a/lib/Components/loading.dart b/lib/Components/loading.dart new file mode 100644 index 0000000..8853516 --- /dev/null +++ b/lib/Components/loading.dart @@ -0,0 +1,22 @@ +import 'package:flare_flutter/flare_actor.dart'; +import 'package:flutter/material.dart'; + +class Loading extends StatelessWidget { + Loading({Key key}) : super(key: key); + + @override + Widget build(BuildContext context) { + Size size = MediaQuery.of(context).size; + return Container( + width: size.width, + height: size.height, + color: Colors.transparent, + child: FlareActor( + 'assets/animations/MDLF_animation.flr', + alignment: Alignment.center, + fit: BoxFit.scaleDown, + animation: 'Rotate', + ), + ); + } +} \ No newline at end of file diff --git a/lib/Components/rounded_input_field.dart b/lib/Components/rounded_input_field.dart index 80a64fb..af153c0 100644 --- a/lib/Components/rounded_input_field.dart +++ b/lib/Components/rounded_input_field.dart @@ -18,7 +18,7 @@ class RoundedInputField extends StatelessWidget { this.textColor = kBlack, this.iconColor = kPrimaryColor, this.onChanged, - this.maxLength = 50, + this.maxLength, // 50 }) : super(key: key); @override diff --git a/lib/Components/upload_image_container.dart b/lib/Components/upload_image_container.dart index 07a26da..f82cc1f 100644 --- a/lib/Components/upload_image_container.dart +++ b/lib/Components/upload_image_container.dart @@ -1,6 +1,7 @@ import 'dart:io'; import 'dart:convert'; import 'package:dart_vlc/dart_vlc.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Components/vlc_viewer.dart'; import 'package:manager_app/constants.dart'; import 'package:path/path.dart'; @@ -92,7 +93,12 @@ class _UploadImageContainerState extends State with Single } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: 200, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: 200, + child: Loading() + ) + ); } } ); diff --git a/lib/Screens/Configurations/Section/SubSection/Slider/listView_card_image.dart b/lib/Screens/Configurations/Section/SubSection/Slider/listView_card_image.dart index 41f98a7..a9535e5 100644 --- a/lib/Screens/Configurations/Section/SubSection/Slider/listView_card_image.dart +++ b/lib/Screens/Configurations/Section/SubSection/Slider/listView_card_image.dart @@ -44,20 +44,20 @@ class _ListViewCard extends State { children: [ AutoSizeText( widget.listItems[widget.index].title == null ? "" : widget.listItems[widget.index].title[0].value, - style: new TextStyle(fontSize: 20), + style: new TextStyle(fontSize: 15), maxLines: 1, ), Container( height: MediaQuery.of(context).size.height * 0.1, decoration: boxDecoration(widget.listItems[widget.index], widget.appContext), - padding: const EdgeInsets.all(15), - margin: EdgeInsets.symmetric(vertical: 15, horizontal: 15), + padding: const EdgeInsets.all(10), + margin: EdgeInsets.symmetric(vertical: 10, horizontal: 10), ), Padding( - padding: const EdgeInsets.all(8.0), + padding: const EdgeInsets.all(5.0), child: AutoSizeText( widget.listItems[widget.index].description == null ? "" : widget.listItems[widget.index].description[0].value, - style: new TextStyle(fontSize: 20), + style: new TextStyle(fontSize: 15), maxLines: 3, ), ), diff --git a/lib/Screens/Configurations/Section/section_detail_screen.dart b/lib/Screens/Configurations/Section/section_detail_screen.dart index b1c9807..fa1d8c7 100644 --- a/lib/Screens/Configurations/Section/section_detail_screen.dart +++ b/lib/Screens/Configurations/Section/section_detail_screen.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:manager_app/Components/confirmation_dialog.dart'; import 'package:manager_app/Components/fetch_section_icon.dart'; import 'package:manager_app/Components/image_input_container.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Components/message_notification.dart'; import 'package:manager_app/Components/multi_select_container.dart'; import 'package:manager_app/Components/multi_string_input_container.dart'; @@ -44,7 +45,12 @@ class _SectionDetailScreenState extends State { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ); @@ -55,6 +61,7 @@ class _SectionDetailScreenState extends State { mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Container( + height: size.height *0.13, child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ @@ -113,6 +120,7 @@ class _SectionDetailScreenState extends State { Container( /*height: size.height*0.4, color: Colors.lightBlue,*/ + //height: size.height *0.1, child: Padding( padding: const EdgeInsets.all(10.0), child: Container( @@ -188,7 +196,7 @@ class _SectionDetailScreenState extends State { ), ),// FIELDS SECTION Container( - height: size.height * 0.39, + height: size.height * 0.305, width: size.width * 0.8, child: Padding( padding: const EdgeInsets.all(10.0), diff --git a/lib/Screens/Configurations/configuration_detail_screen.dart b/lib/Screens/Configurations/configuration_detail_screen.dart index 08a3ece..a0d31b5 100644 --- a/lib/Screens/Configurations/configuration_detail_screen.dart +++ b/lib/Screens/Configurations/configuration_detail_screen.dart @@ -3,6 +3,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/painting.dart'; import 'package:manager_app/Components/color_picker_input_container.dart'; import 'package:manager_app/Components/confirmation_dialog.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Components/message_notification.dart'; import 'package:manager_app/Components/multi_select_container.dart'; import 'package:manager_app/Components/rounded_button.dart'; @@ -41,7 +42,12 @@ class _ConfigurationDetailScreenState extends State { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ); @@ -52,7 +58,7 @@ class _ConfigurationDetailScreenState extends State { mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Container( - //height: size.height *0.12, + height: size.height *0.11, child: SingleChildScrollView( child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, @@ -175,7 +181,12 @@ class _ConfigurationDetailScreenState extends State { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ), diff --git a/lib/Screens/Configurations/configurations_screen.dart b/lib/Screens/Configurations/configurations_screen.dart index 401f773..c4daefa 100644 --- a/lib/Screens/Configurations/configurations_screen.dart +++ b/lib/Screens/Configurations/configurations_screen.dart @@ -1,5 +1,7 @@ import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flare_flutter/flare_actor.dart'; import 'package:flutter/material.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Models/managerContext.dart'; import 'package:manager_app/Screens/Configurations/configuration_detail_screen.dart'; import 'package:manager_app/Screens/Configurations/new_configuration_popup.dart'; @@ -46,7 +48,12 @@ class _ConfigurationsScreenState extends State { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ), diff --git a/lib/Screens/Devices/change_device_info_modal.dart b/lib/Screens/Devices/change_device_info_modal.dart index 56292bc..770c25e 100644 --- a/lib/Screens/Devices/change_device_info_modal.dart +++ b/lib/Screens/Devices/change_device_info_modal.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Components/rounded_button.dart'; import 'package:manager_app/Components/string_input_container.dart'; import 'package:manager_app/constants.dart'; @@ -64,7 +65,12 @@ showChangeInfo (String text, DeviceDTO inputDevice, Function onGetResult, int ma } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ), diff --git a/lib/Screens/Devices/devices_screen.dart b/lib/Screens/Devices/devices_screen.dart index b7ab1cd..5e907e4 100644 --- a/lib/Screens/Devices/devices_screen.dart +++ b/lib/Screens/Devices/devices_screen.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Models/managerContext.dart'; import 'package:manager_app/Screens/Devices/device_element.dart'; import 'package:manager_app/app_context.dart'; @@ -45,7 +46,12 @@ class _DevicesScreenState extends State { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ), diff --git a/lib/Screens/Resources/resources_screen.dart b/lib/Screens/Resources/resources_screen.dart index 8e3763f..416c81e 100644 --- a/lib/Screens/Resources/resources_screen.dart +++ b/lib/Screens/Resources/resources_screen.dart @@ -1,6 +1,7 @@ import 'package:auto_size_text/auto_size_text.dart'; import 'package:flutter/material.dart'; import 'package:manager_app/Components/fetch_resource_icon.dart'; +import 'package:manager_app/Components/loading.dart'; import 'package:manager_app/Components/string_input_container.dart'; import 'package:manager_app/Screens/Resources/new_resource_popup.dart'; import 'package:manager_app/Screens/Resources/resource_body_grid.dart'; @@ -57,7 +58,12 @@ class _ResourcesScreenState extends State { } else if (snapshot.connectionState == ConnectionState.none) { return Text("No data"); } else { - return Center(child: Container(height: size.height * 0.2, child: Text('LOADING TODO FRAISE'))); + return Center( + child: Container( + height: size.height * 0.2, + child: Loading() + ) + ); } } ); diff --git a/pubspec.lock b/pubspec.lock index 2bbd576..379700f 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -14,7 +14,7 @@ packages: name: audio_video_progress_bar url: "https://pub.dartlang.org" source: hosted - version: "0.3.2" + version: "0.4.0" auto_size_text: dependency: "direct main" description: @@ -63,7 +63,7 @@ packages: name: convert url: "https://pub.dartlang.org" source: hosted - version: "3.0.0" + version: "3.0.1" cupertino_icons: dependency: "direct main" description: @@ -77,7 +77,7 @@ packages: name: dart_vlc url: "https://pub.dartlang.org" source: hosted - version: "0.0.6" + version: "0.0.7" drag_and_drop_lists: dependency: "direct main" description: @@ -98,14 +98,14 @@ packages: name: ffi url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "1.1.2" file: dependency: transitive description: name: file url: "https://pub.dartlang.org" source: hosted - version: "6.1.0" + version: "6.1.2" filepicker_windows: dependency: "direct main" description: @@ -113,6 +113,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.0" + flare_flutter: + dependency: "direct main" + description: + name: flare_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "3.0.1" flutter: dependency: "direct main" description: flutter @@ -218,7 +225,7 @@ packages: name: path_provider url: "https://pub.dartlang.org" source: hosted - version: "2.0.1" + version: "2.0.2" path_provider_linux: dependency: transitive description: @@ -253,7 +260,7 @@ packages: name: pedantic url: "https://pub.dartlang.org" source: hosted - version: "1.11.0" + version: "1.11.1" platform: dependency: transitive description: @@ -356,7 +363,7 @@ packages: name: video_player url: "https://pub.dartlang.org" source: hosted - version: "2.1.1" + version: "2.1.6" video_player_platform_interface: dependency: transitive description: @@ -370,7 +377,7 @@ packages: name: video_player_web url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.0.1" win32: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 41c0da2..bc534fa 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -33,6 +33,7 @@ dependencies: convert: ^3.0.0 collection: any filepicker_windows: ^2.0.0 + flare_flutter: ^3.0.1 dart_vlc: ^0.0.6 video_player: ^2.1.1 drag_and_drop_lists: ^0.3.2 @@ -59,9 +60,9 @@ flutter: uses-material-design: true # To add assets to your application, add an assets section, like this: - # assets: - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg + assets: + - assets/images/ + - assets/animations/ # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.dev/assets-and-images/#resolution-aware.