sense_the_rythm

rythm game for ESense Earable
git clone git://source.orangerot.dev:/university/sense_the_rythm.git
Log | Files | Refs | README | LICENSE

connection_status_button.dart (1414B)


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