blob: e0c4cb4fcc12ba712fc9c668b10b0cf38362bc05 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
import 'package:flutter/material.dart';
import 'package:sense_the_rhythm/utils/esense_input.dart';
import 'package:sense_the_rhythm/widgets/esense_connect_dialog.dart';
class ConnectionStatusButton extends StatelessWidget {
final String deviceStatus;
const ConnectionStatusButton(
this.deviceStatus, {
super.key,
});
@override
Widget build(BuildContext context) {
return FilledButton.icon(
style: ButtonStyle(
backgroundColor: WidgetStateProperty.all(
ESenseInput.instance.connected ? Colors.green : Colors.grey),
padding:
WidgetStateProperty.all(EdgeInsets.symmetric(horizontal: 8.0))),
onPressed: () => showDialog(
context: context,
builder: (BuildContext context) {
return ESenseConnectDialog(
deviceStatus: ESenseInput.instance.deviceStatus,
connect: (String name) {
ESenseInput.instance.connectToESense(name);
},
disconnect: () {
ESenseInput.instance.eSenseManager.disconnect();
},
);
},
),
label: Text(deviceStatus),
iconAlignment: IconAlignment.end,
icon: Icon(ESenseInput.instance.connected
? Icons.bluetooth_connected
: Icons.bluetooth));
}
}
|