diff --git a/source/HomeAssistantMenuItemFactory.mc b/source/HomeAssistantMenuItemFactory.mc index 5703829..bc3ba19 100644 --- a/source/HomeAssistantMenuItemFactory.mc +++ b/source/HomeAssistantMenuItemFactory.mc @@ -31,6 +31,8 @@ class HomeAssistantMenuItemFactory { private var mTapIcon; + private var mMenuIcon; + private static var instance; private function initialize() { @@ -47,6 +49,14 @@ class HomeAssistantMenuItemFactory { mTapIcon = new WatchUi.Bitmap({ :rezId=>$.Rez.Drawables.TapIcon }); + + mMenuIcon = new WatchUi.Bitmap({ + :rezId=>Rez.Drawables.MenuIcon, + :locX=>WatchUi.LAYOUT_HALIGN_CENTER, + :locY=>WatchUi.LAYOUT_VALIGN_CENTER + }); + + } @@ -97,7 +107,7 @@ class HomeAssistantMenuItemFactory { function group(definition as Lang.Dictionary) as WatchUi.MenuItem{ if (bLeanDesign) { - return new HomeAssistantViewIconMenuItem(definition); + return new HomeAssistantViewIconMenuItem(definition, mMenuIcon, mRightLabelAlignement); } else { return new HomeAssistantViewMenuItem(definition); } diff --git a/source/HomeAssistantViewIconMenuItem.mc b/source/HomeAssistantViewIconMenuItem.mc index 094055d..a46e4c8 100644 --- a/source/HomeAssistantViewIconMenuItem.mc +++ b/source/HomeAssistantViewIconMenuItem.mc @@ -24,24 +24,18 @@ using Toybox.WatchUi; class HomeAssistantViewIconMenuItem extends WatchUi.IconMenuItem { hidden var mMenu as HomeAssistantView; - function initialize(definition as Lang.Dictionary) { + function initialize(definition as Lang.Dictionary, icon as WatchUi.Drawable, options as { + :alignment as WatchUi.MenuItem.Alignment + } or Null) { var label = definition.get("name") as Lang.String; var identifier = definition.get("entity") as Lang.String; - - var icon = new WatchUi.Bitmap({ - :rezId=>Rez.Drawables.MenuIcon, - :locX=>WatchUi.LAYOUT_HALIGN_CENTER, - :locY=>WatchUi.LAYOUT_VALIGN_CENTER - }); - - var alignement = {:alignment => WatchUi.MenuItem.MENU_ITEM_LABEL_ALIGN_RIGHT}; - + WatchUi.IconMenuItem.initialize( label, null, identifier, icon, - alignement + options ); mMenu = new HomeAssistantView(definition, null);