add image field to ConnectionButton
This commit is contained in:
BIN
assets/images/connect_norouz.PNG
Normal file
BIN
assets/images/connect_norouz.PNG
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.7 MiB |
BIN
assets/images/disconnect_norouz.PNG
Normal file
BIN
assets/images/disconnect_norouz.PNG
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 166 KiB |
@@ -93,6 +93,16 @@ class ConnectionButton extends HookConsumerWidget {
|
|||||||
AsyncData(value: _) => buttonTheme.idleColor!,
|
AsyncData(value: _) => buttonTheme.idleColor!,
|
||||||
_ => Colors.red,
|
_ => Colors.red,
|
||||||
},
|
},
|
||||||
|
image:switch (connectionStatus) {
|
||||||
|
AsyncData(value: Connected()) when requiresReconnect == true =>
|
||||||
|
Assets.images.disconnectNorouz,
|
||||||
|
AsyncData(value: Connected()) => Assets.images.connectNorouz,
|
||||||
|
AsyncData(value: _) => Assets.images.disconnectNorouz,
|
||||||
|
_ => Assets.images.disconnectNorouz,
|
||||||
|
AsyncData(value: Disconnected()) || AsyncError() => Assets.images.disconnectNorouz,
|
||||||
|
AsyncData(value: Connected()) => Assets.images.connectNorouz,
|
||||||
|
_ =>Assets.images.disconnectNorouz,
|
||||||
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -103,12 +113,14 @@ class _ConnectionButton extends StatelessWidget {
|
|||||||
required this.enabled,
|
required this.enabled,
|
||||||
required this.label,
|
required this.label,
|
||||||
required this.buttonColor,
|
required this.buttonColor,
|
||||||
|
required this.image,
|
||||||
});
|
});
|
||||||
|
|
||||||
final VoidCallback onTap;
|
final VoidCallback onTap;
|
||||||
final bool enabled;
|
final bool enabled;
|
||||||
final String label;
|
final String label;
|
||||||
final Color buttonColor;
|
final Color buttonColor;
|
||||||
|
final AssetGenImage image;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@@ -144,12 +156,7 @@ class _ConnectionButton extends StatelessWidget {
|
|||||||
tween: ColorTween(end: buttonColor),
|
tween: ColorTween(end: buttonColor),
|
||||||
duration: const Duration(milliseconds: 250),
|
duration: const Duration(milliseconds: 250),
|
||||||
builder: (context, value, child) {
|
builder: (context, value, child) {
|
||||||
return Assets.images.logo.svg(
|
return image.image();
|
||||||
colorFilter: ColorFilter.mode(
|
|
||||||
value!,
|
|
||||||
BlendMode.srcIn,
|
|
||||||
),
|
|
||||||
);
|
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -111,6 +111,8 @@ flutter:
|
|||||||
- assets/images/tray_icon.png
|
- assets/images/tray_icon.png
|
||||||
- assets/images/tray_icon_connected.ico
|
- assets/images/tray_icon_connected.ico
|
||||||
- assets/images/tray_icon_disconnected.ico
|
- assets/images/tray_icon_disconnected.ico
|
||||||
|
- assets/images/connect_norouz.PNG
|
||||||
|
- assets/images/disconnect_norouz.PNG
|
||||||
|
|
||||||
fonts:
|
fonts:
|
||||||
- family: Shabnam
|
- family: Shabnam
|
||||||
|
|||||||
Reference in New Issue
Block a user