smartfarming-mobile/agrilink_vocpro/lib/features/control/view/control_screen.dart

52 lines
1.7 KiB
Dart

import 'package:agrilink_vocpro/core/constant/app_theme.dart';
import 'package:agrilink_vocpro/core/state/result_state.dart';
import 'package:agrilink_vocpro/features/control/provider/control_provider.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:provider/provider.dart';
class ControlScreen extends StatelessWidget {
const ControlScreen({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Control', style: AppTheme.labelMedium),
centerTitle: true,
backgroundColor: Colors.white,
scrolledUnderElevation: 0,
),
body: Consumer<ControlProvider>(builder: (context, provider, child) {
return SafeArea(
child: ListView(
children: [
SizedBox(
height: 16.h,
child: Center(
child: provider.mqttState == ResultState.loading
? const CircularProgressIndicator()
: provider.mqttState == ResultState.error
? const Text('Failed to connect to MQTT')
: const Text('Connected to MQTT'),
),
),
SizedBox(height: 16.h),
ListTile(
title: Text('Control 1', style: AppTheme.labelMedium),
subtitle: const Text('Control 1 description'),
trailing: Switch(
value: provider.control_1,
onChanged: (value) {
provider.switchControl1();
},
),
),
// Control lainnya...
],
));
}),
);
}
}