389ff92cc1
* Makefile, Scripts: new linter * About: remove ID from IC * Firmware: remove double define for DIVC/DIVR * Scripts: check folder names too. Docker: replace syntax check with make lint. * Reformat Sources and Migrate to new file naming convention * Docker: symlink clang-format-12 to clang-format * Add coding style guide
21 lines
492 B
C++
21 lines
492 B
C++
#pragma once
|
|
#include <gui/gui.h>
|
|
#include <gui/view.h>
|
|
|
|
class GenericElement {
|
|
public:
|
|
GenericElement(){};
|
|
virtual ~GenericElement(){};
|
|
virtual void draw(Canvas* canvas) = 0;
|
|
virtual bool input(InputEvent* event) = 0;
|
|
|
|
// TODO that must be accessible only to ContainerVMData
|
|
void set_parent_view(View* view);
|
|
|
|
// TODO that must be accessible only to inheritors
|
|
void lock_model();
|
|
void unlock_model(bool need_redraw);
|
|
|
|
private:
|
|
View* view = nullptr;
|
|
}; |