app_pages.dart 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  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:clean/module/store/store_controller.dart';
  20. import 'package:clean/module/store/store_view.dart';
  21. import 'package:flutter/cupertino.dart';
  22. import 'package:get/get.dart';
  23. import 'package:get/get_core/src/get_main.dart';
  24. import 'package:get/get_instance/src/bindings_interface.dart';
  25. import '../module/main/main_controller.dart';
  26. import '../module/photo_info/photo_info_view.dart';
  27. import '../module/privacy/privacy_controller.dart';
  28. abstract class AppPage {
  29. static final pages = <GetPage>[
  30. ...generalPages,
  31. ];
  32. }
  33. abstract class RoutePath {
  34. static const mainTab = '/mainTab';
  35. static const privacy = '/privacy';
  36. static const peoplePhoto = '/peoplePhoto';
  37. static const similarPhoto = '/similarPhoto';
  38. static const locationsPhoto = '/locationsPhoto';
  39. static const screenshots = '/screenshots';
  40. static const photoInfo = '/photoInfo';
  41. static const store = '/store';
  42. static const photoPreview = '/photoPreview';
  43. static const locationsSinglePhoto = '/locationsSinglePhoto';
  44. static const photoSelectedPreview = '/photoSelectedPreview';
  45. }
  46. class AppBinding extends Bindings {
  47. @override
  48. void dependencies() {
  49. lazyPut(() => MainController());
  50. lazyPut(() => HomeController());
  51. lazyPut(() => PrivacyController());
  52. lazyPut(() => PeoplePhotoController());
  53. lazyPut(() => SimilarPhotoController());
  54. lazyPut(() => LocationsPhotoController());
  55. lazyPut(() => ScreenShotsController());
  56. lazyPut(() => PhotoPreviewController());
  57. lazyPut(() => PhotoInfoController());
  58. lazyPut(() => StoreController());
  59. lazyPut(() => LocationsSinglePhotoController());
  60. lazyPut(() => PhotoSelectedPreviewController());
  61. }
  62. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  63. Get.lazyPut(builder, fenix: true);
  64. }
  65. }
  66. final generalPages = [
  67. GetPage(name: RoutePath.mainTab, page: () => MainTabPage()),
  68. GetPage(name: RoutePath.privacy, page: () => PrivacyPage()),
  69. GetPage(name: RoutePath.peoplePhoto, page: () => PeoplePhotoPage()),
  70. GetPage(name: RoutePath.similarPhoto, page: () => SimilarPhotoPage()),
  71. GetPage(name: RoutePath.locationsPhoto, page: () => LocationsPhotoPage()),
  72. GetPage(name: RoutePath.screenshots, page: () => ScreenshotsPage()),
  73. GetPage(name: RoutePath.photoPreview, page: () => PhotoPreviewPage()),
  74. GetPage(name: RoutePath.photoInfo, page: () => PhotoInfoPage()),
  75. GetPage(name: RoutePath.store, page: () => StorePage()),
  76. GetPage(name: RoutePath.locationsSinglePhoto, page: () => LocationsSinglePhotoPage()),
  77. GetPage(name: RoutePath.photoSelectedPreview, page: () => PhotoSelectedPreviewPage()),
  78. ];