app_pages.dart 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import 'package:clean/module/home/home_controller.dart';
  2. import 'package:clean/module/locations_photo/locations_photo_controller.dart';
  3. import 'package:clean/module/locations_photo/locations_photo_view.dart';
  4. import 'package:clean/module/locations_photo/locations_single_photo_controller.dart';
  5. import 'package:clean/module/locations_photo/locations_single_photo_view.dart';
  6. import 'package:clean/module/main/main_view.dart';
  7. import 'package:clean/module/photo_preview/photo_preview_controller.dart';
  8. import 'package:clean/module/photo_preview/photo_preview_view.dart';
  9. import 'package:clean/module/photo_info/photo_info_controller.dart';
  10. import 'package:clean/module/photo_preview/photo_selected_preview_controller.dart';
  11. import 'package:clean/module/photo_preview/phtoto_selected_preview_view.dart';
  12. import 'package:clean/module/privacy/privacy_view.dart';
  13. import 'package:clean/module/people_photo/people_photo_controller.dart';
  14. import 'package:clean/module/people_photo/people_photo_view.dart';
  15. import 'package:clean/module/screenshots_blurry/screenshots_controller.dart';
  16. import 'package:clean/module/screenshots_blurry/screenshots_view.dart';
  17. import 'package:clean/module/similar_photo/similar_photo_controller.dart';
  18. import 'package:clean/module/similar_photo/similar_photo_view.dart';
  19. import 'package:flutter/cupertino.dart';
  20. import 'package:get/get.dart';
  21. import 'package:get/get_core/src/get_main.dart';
  22. import 'package:get/get_instance/src/bindings_interface.dart';
  23. import '../module/main/main_controller.dart';
  24. import '../module/photo_info/photo_info_view.dart';
  25. import '../module/privacy/privacy_controller.dart';
  26. abstract class AppPage {
  27. static final pages = <GetPage>[
  28. ...generalPages,
  29. ];
  30. }
  31. abstract class RoutePath {
  32. static const mainTab = '/mainTab';
  33. static const privacy = '/privacy';
  34. static const peoplePhoto = '/peoplePhoto';
  35. static const similarPhoto = '/similarPhoto';
  36. static const locationsPhoto = '/locationsPhoto';
  37. static const screenshots = '/screenshots';
  38. static const photoInfo = '/photoInfo';
  39. static const photoPreview = '/photoPreview';
  40. static const locationsSinglePhoto = '/locationsSinglePhoto';
  41. static const photoSelectedPreview = '/photoSelectedPreview';
  42. }
  43. class AppBinding extends Bindings {
  44. @override
  45. void dependencies() {
  46. lazyPut(() => MainController());
  47. lazyPut(() => HomeController());
  48. lazyPut(() => PrivacyController());
  49. lazyPut(() => PeoplePhotoController());
  50. lazyPut(() => SimilarPhotoController());
  51. lazyPut(() => LocationsPhotoController());
  52. lazyPut(() => ScreenShotsController());
  53. lazyPut(() => PhotoPreviewController());
  54. lazyPut(() => PhotoInfoController());
  55. lazyPut(() => LocationsSinglePhotoController());
  56. lazyPut(() => PhotoSelectedPreviewController());
  57. }
  58. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  59. Get.lazyPut(builder, fenix: true);
  60. }
  61. }
  62. final generalPages = [
  63. GetPage(name: RoutePath.mainTab, page: () => MainTabPage()),
  64. GetPage(name: RoutePath.privacy, page: () => PrivacyPage()),
  65. GetPage(name: RoutePath.peoplePhoto, page: () => PeoplePhotoPage()),
  66. GetPage(name: RoutePath.similarPhoto, page: () => SimilarPhotoPage()),
  67. GetPage(name: RoutePath.locationsPhoto, page: () => LocationsPhotoPage()),
  68. GetPage(name: RoutePath.screenshots, page: () => ScreenshotsPage()),
  69. GetPage(name: RoutePath.photoPreview, page: () => PhotoPreviewPage()),
  70. GetPage(name: RoutePath.photoInfo, page: () => PhotoInfoPage()),
  71. GetPage(name: RoutePath.locationsSinglePhoto, page: () => LocationsSinglePhotoPage()),
  72. GetPage(name: RoutePath.photoSelectedPreview, page: () => PhotoSelectedPreviewPage()),
  73. ];