Files
GarminHomeAssistant/source/HomeAssistantGroupMenuItem.mc
Philip Abbey a30f0c6218 Bulk amendment of header comments.
Removed "." from the end of all URLs because Copilot complains it can't find the URLs and its too stupid to realise the "." should be omitted. E.g. "https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/LICENSE."
2026-01-25 17:46:09 +00:00

57 lines
1.6 KiB
MonkeyC

//-----------------------------------------------------------------------------------
//
// Distributed under MIT Licence
// See https://github.com/house-of-abbey/GarminHomeAssistant/blob/main/LICENSE
//
//-----------------------------------------------------------------------------------
//
// GarminHomeAssistant is a Garmin IQ application written in Monkey C and routinely
// tested on a Venu 2 device. The source code is provided at:
// https://github.com/house-of-abbey/GarminHomeAssistant
//
// P A Abbey & J D Abbey & Someone0nEarth, 31 October 2023
//
//-----------------------------------------------------------------------------------
using Toybox.Lang;
using Toybox.WatchUi;
//! Menu button with an icon that opens a sub-menu, i.e. group, and optionally renders
//! a Home Assistant Template.
//
class HomeAssistantGroupMenuItem extends HomeAssistantMenuItem {
private var mMenu as HomeAssistantView;
//! Class Constructor
//
function initialize(
definition as Lang.Dictionary,
template as Lang.String,
icon as WatchUi.Drawable,
options as {
:alignment as WatchUi.MenuItem.Alignment
}?
) {
if (options != null) {
options[:icon] = icon;
} else {
options = { :icon => icon };
}
HomeAssistantMenuItem.initialize(
definition.get("name") as Lang.String,
template,
options
);
mMenu = new HomeAssistantView(definition, null);
}
//! Return the submenu for this group menu item.
//
function getMenuView() as HomeAssistantView {
return mMenu;
}
}