52 lines
1.5 KiB
Dart
52 lines
1.5 KiB
Dart
|
|
import 'package:flutter/material.dart';
|
||
|
|
import 'package:get/get.dart';
|
||
|
|
import 'package:terepi_seged/pages/map_survey/presentations/controllers/map_survey_controller.dart';
|
||
|
|
import 'package:terepi_seged/widgets/wgs84_coordinate_card.dart';
|
||
|
|
|
||
|
|
import 'eov_coordinate_card.dart';
|
||
|
|
|
||
|
|
class MapInfoCardColumn extends StatelessWidget {
|
||
|
|
final MapSurveyController controller;
|
||
|
|
|
||
|
|
const MapInfoCardColumn({
|
||
|
|
super.key,
|
||
|
|
required this.controller,
|
||
|
|
});
|
||
|
|
|
||
|
|
@override
|
||
|
|
Widget build(BuildContext context) {
|
||
|
|
final screenHeight = MediaQuery.sizeOf(context).height;
|
||
|
|
final screenWidth = MediaQuery.sizeOf(context).width;
|
||
|
|
|
||
|
|
return Obx(() {
|
||
|
|
final cards = <Widget>[];
|
||
|
|
|
||
|
|
if (controller.showWgs84Card.value) {
|
||
|
|
cards.add(Wgs84CoordinateCard(controller: controller));
|
||
|
|
}
|
||
|
|
if (controller.showEovCard.value) {
|
||
|
|
cards.add(EovCoordinateCard(controller: controller));
|
||
|
|
}
|
||
|
|
|
||
|
|
if (cards.isEmpty) {
|
||
|
|
return const SizedBox.shrink();
|
||
|
|
}
|
||
|
|
|
||
|
|
return ConstrainedBox(
|
||
|
|
constraints: BoxConstraints(
|
||
|
|
maxWidth: screenWidth - 50, maxHeight: screenHeight * 0.55),
|
||
|
|
child: SingleChildScrollView(
|
||
|
|
child: Column(
|
||
|
|
mainAxisSize: MainAxisSize.min,
|
||
|
|
children: [
|
||
|
|
for (var i = 0; i < cards.length; i++) ...[
|
||
|
|
cards[i],
|
||
|
|
if (i != cards.length - 1) const SizedBox(height: 8)
|
||
|
|
]
|
||
|
|
],
|
||
|
|
),
|
||
|
|
));
|
||
|
|
});
|
||
|
|
}
|
||
|
|
}
|