C++ apps: templated scene controller (#517)

* C++ apps: templated scene controller
* templated app: fix type names
* templated app: text store component
* Applications: add "Templated Scene" application
* templated app: refractoring
* Gui module byte input: fix docs
* templated app: new byte input scene
* templated app: dialog ex view module
* templated app: popup view module
* templated app: dialog-ex view module, fix docs
* templated app: text input view module
* Gui module text input: fix docs
* Furi: duplicated include
* templated app: record holder (controller) class
* templated app: view modules can now be accessed via cast
* templated app: remove unused includes
* templated app: fix return code
This commit is contained in:
SG
2021-06-15 21:01:56 +10:00
committed by GitHub
parent 3a2121bbb8
commit 0b14db4fb3
30 changed files with 1242 additions and 9 deletions

View File

@@ -0,0 +1,33 @@
#include "submenu-vm.h"
SubmenuVM::SubmenuVM() {
submenu = submenu_alloc();
}
SubmenuVM::~SubmenuVM() {
submenu_free(submenu);
}
View* SubmenuVM::get_view() {
return submenu_get_view(submenu);
}
void SubmenuVM::clean() {
submenu_clean(submenu);
}
SubmenuItem* SubmenuVM::add_item(
const char* label,
uint32_t index,
SubmenuItemCallback callback,
void* callback_context) {
return submenu_add_item(submenu, label, index, callback, callback_context);
}
void SubmenuVM::set_selected_item(uint32_t index) {
submenu_set_selected_item(submenu, index);
}
void SubmenuVM::set_header(const char* header) {
submenu_set_header(submenu, header);
}