initial codex commit
This commit is contained in:
@@ -97,7 +97,10 @@ class _StationAutocompleteState extends State<StationAutocomplete> {
|
||||
}
|
||||
|
||||
class RouteCalculator extends StatefulWidget {
|
||||
const RouteCalculator({super.key});
|
||||
const RouteCalculator({super.key, this.onDistanceComputed, this.onApplyRoute});
|
||||
|
||||
final ValueChanged<double>? onDistanceComputed;
|
||||
final ValueChanged<RouteResult>? onApplyRoute;
|
||||
|
||||
@override
|
||||
State<RouteCalculator> createState() => _RouteCalculatorState();
|
||||
@@ -143,11 +146,11 @@ class _RouteCalculatorState extends State<RouteCalculator> {
|
||||
setState(() {
|
||||
_routeResult = RouteResult.fromJson(res);
|
||||
});
|
||||
final distance = (_routeResult?.distance ?? 0);
|
||||
widget.onDistanceComputed?.call(distance);
|
||||
} else {
|
||||
setState(() {
|
||||
_errorMessage =
|
||||
RouteError.fromJson(res["error_obj"][0]).msg ??
|
||||
'Unknown error occurred';
|
||||
_errorMessage = RouteError.fromJson(res["error_obj"][0]).msg;
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -248,11 +251,21 @@ class _RouteCalculatorState extends State<RouteCalculator> {
|
||||
style: TextStyle(color: Theme.of(context).colorScheme.error),
|
||||
),
|
||||
)
|
||||
else if (_routeResult != null)
|
||||
else if (_routeResult != null) ...[
|
||||
RouteSummaryWidget(
|
||||
distance: _routeResult!.distance,
|
||||
onDetailsPressed: () => setState(() => _showDetails = true),
|
||||
)
|
||||
),
|
||||
if (widget.onApplyRoute != null)
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16.0),
|
||||
child: ElevatedButton.icon(
|
||||
onPressed: () => widget.onApplyRoute!(_routeResult!),
|
||||
icon: const Icon(Icons.check),
|
||||
label: const Text('Apply to entry'),
|
||||
),
|
||||
),
|
||||
]
|
||||
else
|
||||
SizedBox.shrink(),
|
||||
const SizedBox(height: 10),
|
||||
|
||||
Reference in New Issue
Block a user