From 5d95c3702d34624867cbef252f7496d14fa11974 Mon Sep 17 00:00:00 2001 From: Yegor Vialov Date: Sun, 4 Nov 2018 22:19:45 +0200 Subject: [PATCH] Resolves #162 View names display --- lib/main.dart | 25 +------------------------ lib/ui_class/view.class.dart | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 24 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 8d415b2..59af140 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -301,30 +301,7 @@ class _MainPageState extends State with WidgetsBindingObserver { if (_homeAssistant.ui.views.isNotEmpty) { _homeAssistant.ui.views.forEach((HAView view) { - if (view.linkedEntity == null) { - result.add( - Tab( - icon: - Icon( - MaterialDesignIcons.createIconDataFromIconName( - view.iconName ?? "mdi:home-assistant"), - size: 24.0, - ) - ) - ); - } else { - result.add( - Tab( - icon: MaterialDesignIcons.createIconWidgetFromEntityData( - view.linkedEntity, 24.0, null) ?? - Icon( - MaterialDesignIcons.createIconDataFromIconName( - "mdi:home-assistant"), - size: 24.0, - ) - ) - ); - } + result.add(view.buildTab()); }); } diff --git a/lib/ui_class/view.class.dart b/lib/ui_class/view.class.dart index c0cb40d..9be0339 100644 --- a/lib/ui_class/view.class.dart +++ b/lib/ui_class/view.class.dart @@ -55,6 +55,42 @@ class HAView { cards.addAll(autoGeneratedCards); } + Widget buildTab() { + if (linkedEntity == null) { + if (iconName != null) { + return + Tab( + icon: + Icon( + MaterialDesignIcons.createIconDataFromIconName( + iconName ?? "mdi:home-assistant"), + size: 24.0, + ) + ); + } else { + return + Tab( + text: name.toUpperCase(), + ); + } + } else { + if (linkedEntity.icon != null && linkedEntity.icon.length > 0) { + return Tab( + icon: Icon( + MaterialDesignIcons.createIconDataFromIconName( + linkedEntity.icon), + size: 24.0, + ) + ); + } else { + return Tab( + text: linkedEntity.displayName.toUpperCase(), + ); + } + + } + } + Widget build(BuildContext context) { return ViewWidget( view: this,