46 lines
2.5 KiB
Dart
46 lines
2.5 KiB
Dart
import 'package:get/get.dart';
|
|
import '../controllers/artillery_controller.dart';
|
|
import '../controllers/hlz_controller.dart';
|
|
import '../controllers/isochrone_controller.dart';
|
|
import '../controllers/los_controller.dart';
|
|
import '../controllers/minefield_controller.dart';
|
|
import '../controllers/navigation_controller.dart';
|
|
import '../controllers/optical_rangefinder_controller.dart';
|
|
import '../controllers/overlays_controller.dart';
|
|
import '../controllers/resection_controller.dart';
|
|
import '../controllers/symbols_controller.dart';
|
|
import '../controllers/tactical_map_controller.dart';
|
|
import '../controllers/viewshed_controller.dart';
|
|
|
|
/// ============================================================================
|
|
/// [TacticalBinding] - تهيئة وحقن التبعيات والمتحكمات (GetX Dependency Injection)
|
|
/// ============================================================================
|
|
/// English:
|
|
/// Master GetX Binding registering all tactical operation controllers
|
|
/// for seamless dependency injection and lifecycle management across the app.
|
|
///
|
|
/// العربية:
|
|
/// مسجل التبعيات المركزي لـ GetX، يقوم بإنشاء وحقن كافة المتحكمات التكتيكية
|
|
/// لضمان استقرار دورة حياة التطبيق وإمكانية الوصول إليها من أي شاشة أو نافذة.
|
|
/// ============================================================================
|
|
class TacticalBinding extends Bindings {
|
|
@override
|
|
void dependencies() {
|
|
// 1. Core Tactical Sub-Controllers
|
|
Get.lazyPut<ArtilleryController>(() => ArtilleryController(), fenix: true);
|
|
Get.lazyPut<HlzController>(() => HlzController(), fenix: true);
|
|
Get.lazyPut<MinefieldController>(() => MinefieldController(), fenix: true);
|
|
Get.lazyPut<IsochroneController>(() => IsochroneController(), fenix: true);
|
|
Get.lazyPut<SymbolsController>(() => SymbolsController(), fenix: true);
|
|
Get.lazyPut<OverlaysController>(() => OverlaysController(), fenix: true);
|
|
Get.lazyPut<LosController>(() => LosController(), fenix: true);
|
|
Get.lazyPut<ViewshedController>(() => ViewshedController(), fenix: true);
|
|
Get.lazyPut<ResectionController>(() => ResectionController(), fenix: true);
|
|
Get.lazyPut<NavigationController>(() => NavigationController(), fenix: true);
|
|
Get.lazyPut<OpticalRangefinderController>(() => OpticalRangefinderController(), fenix: true);
|
|
|
|
// 2. Master Map Orchestrator Controller
|
|
Get.lazyPut<TacticalMapController>(() => TacticalMapController(), fenix: true);
|
|
}
|
|
}
|