diff --git a/components/dwin/dwin.hpp b/components/dwin/dwin.hpp index 93c3327..b12abae 100644 --- a/components/dwin/dwin.hpp +++ b/components/dwin/dwin.hpp @@ -1,4 +1,19 @@ #pragma once #include "dwin_screen.hpp" #include "text_displayer.hpp" -#include "var_icon.hpp" \ No newline at end of file +#include "var_icon.hpp" + +namespace iflytop { +namespace dwin { +typedef enum { + kdwin_color_green = 0x1694, // kgreen + kdwin_color_red = 0xF800, // kred + kdwin_color_blue = 0x12DC, // kblue +} dwin_color_t; + +#define kblue kdwin_color_blue +#define kred kdwin_color_red +#define kgreen kdwin_color_green + +} // namespace dwin +} // namespace iflytop diff --git a/components/dwin/text_displayer.cpp b/components/dwin/text_displayer.cpp index e5ad4f3..5968fd6 100644 --- a/components/dwin/text_displayer.cpp +++ b/components/dwin/text_displayer.cpp @@ -31,11 +31,15 @@ bool TextDisplayer::init(DwinScreen *dwin_screen, uint16_t descript_add, uint16_ return true; } -bool TextDisplayer::show() { setTextLengthDirect(m_descript.TextLength); -return true; +bool TextDisplayer::show() { + setTextLengthDirect(m_descript.TextLength); + m_hide = false; + return true; } -bool TextDisplayer::hide() { setTextLengthDirect(0); -return true; +bool TextDisplayer::hide() { + setTextLengthDirect(0); + m_hide = true; + return true; } bool TextDisplayer::flushcfg() { return m_dwin_screen->write_varspace16_muti(m_descript_add, (uint16_t *)&m_descript, sizeof(m_descript) / 2, 100); } bool TextDisplayer::readcfg() { return m_dwin_screen->read_varspace16_muti(m_descript_add, (uint16_t *)&m_descript, sizeof(m_descript) / 2, 100); } diff --git a/components/dwin/text_displayer.hpp b/components/dwin/text_displayer.hpp index 8c13f4a..656294d 100644 --- a/components/dwin/text_displayer.hpp +++ b/components/dwin/text_displayer.hpp @@ -70,6 +70,7 @@ class TextDisplayer { uint16_t m_descript_add = 0; TextDisplayerDescript_t m_descript; + bool m_hide = false; public: bool init(DwinScreen *dwin_screen, uint16_t valsize); @@ -104,6 +105,8 @@ class TextDisplayer { bool show(); bool hide(); + bool isHide() { return m_hide; } + public: bool flushcfg(); bool readcfg();