Initial commit
This commit is contained in:
30
src/epdgui/epdgui_mutexswitch.h
Normal file
30
src/epdgui/epdgui_mutexswitch.h
Normal file
@@ -0,0 +1,30 @@
|
||||
#ifndef _EPDGUI_MUTEXSWITCH_H
|
||||
#define _EPDGUI_MUTEXSWITCH_H
|
||||
|
||||
#include "epdgui_switch.h"
|
||||
#include <list>
|
||||
|
||||
class EPDGUI_MutexSwitch : public EPDGUI_Base
|
||||
{
|
||||
public:
|
||||
EPDGUI_MutexSwitch();
|
||||
|
||||
void Draw(m5epd_update_mode_t mode);
|
||||
void Draw(M5EPD_Canvas* canvas);
|
||||
void Bind(int16_t event, void (* func_cb)(epdgui_args_vector_t&));
|
||||
void UpdateState(int16_t x, int16_t y);
|
||||
|
||||
void Add(EPDGUI_Switch* object) {_object_list.push_back(object);}
|
||||
void SetExclusive(bool isExclusive) {_is_exclusive = isExclusive;}
|
||||
void SetDefault(uint16_t idx);
|
||||
|
||||
private:
|
||||
bool _is_exclusive = true;
|
||||
uint16_t _default_idx = 0;
|
||||
std::list<EPDGUI_Switch*> _object_list;
|
||||
std::list<EPDGUI_Switch*>::iterator _last_pressed;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user