feat(P4): Eigener Menüpunkt „Darstellung“, größere Uhr im Standby (1.9.6) #75
@@ -1,3 +1,11 @@
|
|||||||
|
Version 1.9.6:
|
||||||
|
- Die Darstellungseinstellungen haben einen eigenen Menüpunkt „Darstellung" bekommen. Sie
|
||||||
|
standen bisher oben auf der Info-Seite, zwischen Sachen, mit denen sie nichts zu tun
|
||||||
|
haben. Die Info-Seite zeigt jetzt nur noch Firmware-Stände und Verbindungsdaten.
|
||||||
|
- Die Uhr im Standby ist auf dem 7-Zoll-Panel deutlich größer geworden: Die drei Stufen
|
||||||
|
liegen jetzt bei 180, 270 und 360 Pixeln statt bei 120, 180 und 240. Auf dem 4,3-Zoll-
|
||||||
|
Panel bleiben die bisherigen Stufen, dort passen größere schlicht nicht auf den Schirm.
|
||||||
|
|
||||||
Version 1.9.5:
|
Version 1.9.5:
|
||||||
- Die festen Breiten aus 1.9.4 haben nicht gereicht: Auch die HÖHE muss festliegen. LVGL
|
- Die festen Breiten aus 1.9.4 haben nicht gereicht: Auch die HÖHE muss festliegen. LVGL
|
||||||
prüft beim Setzen eines Textes, ob sich die Eigengröße der Beschriftung geändert haben
|
prüft beim Setzen eines Textes, ob sich die Eigengröße der Beschriftung geändert haben
|
||||||
|
|||||||
@@ -571,7 +571,9 @@
|
|||||||
LV_FONT_DECLARE(lv_font_maven_pro_bold_140) \
|
LV_FONT_DECLARE(lv_font_maven_pro_bold_140) \
|
||||||
LV_FONT_DECLARE(lv_font_clock_120) \
|
LV_FONT_DECLARE(lv_font_clock_120) \
|
||||||
LV_FONT_DECLARE(lv_font_clock_180) \
|
LV_FONT_DECLARE(lv_font_clock_180) \
|
||||||
LV_FONT_DECLARE(lv_font_clock_240)
|
LV_FONT_DECLARE(lv_font_clock_240) \
|
||||||
|
LV_FONT_DECLARE(lv_font_clock_270) \
|
||||||
|
LV_FONT_DECLARE(lv_font_clock_360)
|
||||||
|
|
||||||
/*Always set a default font*/
|
/*Always set a default font*/
|
||||||
#define LV_FONT_DEFAULT &lv_font_maven_pro_14
|
#define LV_FONT_DEFAULT &lv_font_maven_pro_14
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -127,8 +127,8 @@ static lv_obj_t* g_otaStatus = nullptr;
|
|||||||
static lv_obj_t* g_otaBytes = nullptr;
|
static lv_obj_t* g_otaBytes = nullptr;
|
||||||
|
|
||||||
// Navigation
|
// Navigation
|
||||||
enum { PG_DASH = 0, PG_CHART, PG_STATS, PG_TEMP, PG_BREW, PG_COLDEX, PG_SERVICE, PG_PROFILE, PG_LIGHT, PG_WIFI, PG_INFO, PG_COUNT };
|
enum { PG_DASH = 0, PG_CHART, PG_STATS, PG_TEMP, PG_BREW, PG_COLDEX, PG_SERVICE, PG_PROFILE, PG_LIGHT, PG_WIFI, PG_DISPLAY, PG_INFO, PG_COUNT };
|
||||||
static const char* PAGE_NAMES[PG_COUNT] = { "Dashboard", "Verlauf", "Statistik", "Temperatur", "Brew-Control", "Cold Extraction", "Reinigung/Wartung", "Profile", "Licht", "WiFi", "Info" };
|
static const char* PAGE_NAMES[PG_COUNT] = { "Dashboard", "Verlauf", "Statistik", "Temperatur", "Brew-Control", "Cold Extraction", "Reinigung/Wartung", "Profile", "Licht", "WiFi", "Darstellung", "Info" };
|
||||||
static lv_obj_t* g_content = nullptr;
|
static lv_obj_t* g_content = nullptr;
|
||||||
static lv_obj_t* g_pages[PG_COUNT] = { nullptr };
|
static lv_obj_t* g_pages[PG_COUNT] = { nullptr };
|
||||||
static lv_obj_t* g_drawer = nullptr;
|
static lv_obj_t* g_drawer = nullptr;
|
||||||
@@ -700,9 +700,17 @@ static lv_obj_t* g_clockSizeBtn[3] = {};
|
|||||||
|
|
||||||
static const lv_font_t* clock_font() {
|
static const lv_font_t* clock_font() {
|
||||||
switch (g_clockSize) {
|
switch (g_clockSize) {
|
||||||
|
#if JC_PANEL_TYPE == WS_PANEL_7H
|
||||||
|
// 7 Zoll, 1280x720: Hier war selbst die groesste Stufe noch zu klein.
|
||||||
|
case UHR_KLEIN: return &lv_font_clock_180;
|
||||||
|
case UHR_MITTEL: return &lv_font_clock_270;
|
||||||
|
default: return &lv_font_clock_360;
|
||||||
|
#else
|
||||||
|
// 4,3 Zoll, 480x480: Groessere Stufen passen schlicht nicht auf das Panel.
|
||||||
case UHR_KLEIN: return &lv_font_clock_120;
|
case UHR_KLEIN: return &lv_font_clock_120;
|
||||||
case UHR_MITTEL: return &lv_font_clock_180;
|
case UHR_MITTEL: return &lv_font_clock_180;
|
||||||
default: return &lv_font_clock_240;
|
default: return &lv_font_clock_240;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3100,8 +3108,10 @@ static void brew_live_sw_cb(lv_event_t* e) {
|
|||||||
{ Preferences prefs; prefs.begin("ui", false); prefs.putBool("brewlive", g_brewLiveEnabled); prefs.end(); }
|
{ Preferences prefs; prefs.begin("ui", false); prefs.putBool("brewlive", g_brewLiveEnabled); prefs.end(); }
|
||||||
if (!g_brewLiveEnabled) brew_live_hide(); // laeuft gerade ein Bezug: sofort ausblenden
|
if (!g_brewLiveEnabled) brew_live_hide(); // laeuft gerade ein Bezug: sofort ausblenden
|
||||||
}
|
}
|
||||||
static void build_info(lv_obj_t* p) {
|
// Eigener Menuepunkt "Darstellung". Die Einstellungen sassen frueher oben auf der
|
||||||
section_title(p, "Darstellung");
|
// Info-Seite; dort standen sie zwischen Firmware-Staenden und Verbindungsdaten,
|
||||||
|
// mit denen sie nichts zu tun haben.
|
||||||
|
static void build_display(lv_obj_t* p) {
|
||||||
lv_obj_t* dcard = th_card(p);
|
lv_obj_t* dcard = th_card(p);
|
||||||
lv_obj_set_width(dcard, LV_PCT(100));
|
lv_obj_set_width(dcard, LV_PCT(100));
|
||||||
lv_obj_set_height(dcard, LV_SIZE_CONTENT);
|
lv_obj_set_height(dcard, LV_SIZE_CONTENT);
|
||||||
@@ -3154,6 +3164,9 @@ static void build_info(lv_obj_t* p) {
|
|||||||
sw_set(swBrewLive, g_brewLiveEnabled);
|
sw_set(swBrewLive, g_brewLiveEnabled);
|
||||||
lv_obj_add_event_cb(swBrewLive, brew_live_sw_cb, LV_EVENT_VALUE_CHANGED, nullptr);
|
lv_obj_add_event_cb(swBrewLive, brew_live_sw_cb, LV_EVENT_VALUE_CHANGED, nullptr);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
static void build_info(lv_obj_t* p) {
|
||||||
section_title(p, "Firmware-Stände & Verbindung");
|
section_title(p, "Firmware-Stände & Verbindung");
|
||||||
|
|
||||||
lv_obj_t* card = th_card(p);
|
lv_obj_t* card = th_card(p);
|
||||||
@@ -3709,6 +3722,7 @@ void ui_init(ProtocolClient* client) {
|
|||||||
g_pages[PG_SERVICE] = make_page(g_content); build_service(g_pages[PG_SERVICE]);
|
g_pages[PG_SERVICE] = make_page(g_content); build_service(g_pages[PG_SERVICE]);
|
||||||
g_pages[PG_WIFI] = make_page(g_content); build_wifi(g_pages[PG_WIFI]);
|
g_pages[PG_WIFI] = make_page(g_content); build_wifi(g_pages[PG_WIFI]);
|
||||||
g_pages[PG_PROFILE] = make_page(g_content); build_profiles(g_pages[PG_PROFILE]);
|
g_pages[PG_PROFILE] = make_page(g_content); build_profiles(g_pages[PG_PROFILE]);
|
||||||
|
g_pages[PG_DISPLAY] = make_page(g_content); build_display(g_pages[PG_DISPLAY]);
|
||||||
g_pages[PG_INFO] = make_page(g_content); build_info(g_pages[PG_INFO]);
|
g_pages[PG_INFO] = make_page(g_content); build_info(g_pages[PG_INFO]);
|
||||||
|
|
||||||
// --- Schublade (Scrim + Menue-Panel) ---
|
// --- Schublade (Scrim + Menue-Panel) ---
|
||||||
|
|||||||
Reference in New Issue
Block a user