Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Initial implementation of Themed Menus. Refs #11533
Themed Menus allows customization of menus through a hierarchical xml description, consisting of actions, action groups, and submenus. An action group is essentially a macro that expands into a possibly context-dependent list of actions. This is demonstrated by replacing the deeply complex and hierarchical Playback OSD menu with a themed menu equivalent, defined in menu_playback.xml in the themes/default/ directory. In addition, a "compact" version of the Playback OSD menu is added, with the MENUCOMPACT action and an associated keybinding to display it (defaults to Alt+M). The default compact menu contains just a single entry that invokes the regular Playback OSD menu (for now, I don't want to impose my personal preferences about the most commonly used actions). As such, the compact menu is useful even for remote controls without extra buttons to spare -- simply remap the MENU button to the MENUCOMPACT action in the "TV Playback" context. When more menus are converted to themed versions, the MenuBase class should be moved out of tv_play.cpp and tv_play.h into a new file. Note: This commit is broken into two parts: addition of new code, and deletion of old code. This is to make the diffs vastly more readable.
- Loading branch information