enhancement on the UI and support for power off and status_led for t1000e

This commit is contained in:
Florent de Lamotte
2025-03-10 17:11:55 +01:00
parent 676ba6d066
commit 7bb16cd7f3
7 changed files with 157 additions and 63 deletions

View File

@@ -1,10 +1,12 @@
#pragma once
#include <MeshCore.h>
#include <helpers/ui/DisplayDriver.h>
class UITask {
DisplayDriver* _display;
unsigned long _next_read, _next_refresh, _auto_off;
mesh::MainBoard* _board;
unsigned long _next_refresh, _auto_off;
int _prevBtnState;
bool _connected;
uint32_t _pin_code;
@@ -12,14 +14,23 @@ class UITask {
const char* _build_date;
char _origin[62];
char _msg[80];
int _msgcount;
void renderCurrScreen();
void buttonHandler();
void userLedHandler();
public:
UITask(DisplayDriver& display) : _display(&display) { _next_read = _next_refresh = 0; _connected = false; }
UITask(mesh::MainBoard* board, DisplayDriver* display) : _board(board), _display(display){
_next_refresh = 0;
_connected = false;
}
void begin(const char* node_name, const char* build_date, uint32_t pin_code);
void setHasConnection(bool connected) { _connected = connected; }
void clearMsgPreview();
void showMsgPreview(uint8_t path_len, const char* from_name, const char* text);
void msgRead(int msgcount);
void newMsg(uint8_t path_len, const char* from_name, const char* text, int msgcount);
void loop();
};
};