Browse Source

update

master
zhaohe 2 years ago
parent
commit
680cc6ceda
  1. 53
      components/date/date_helper.cpp
  2. 9
      components/date/date_helper.hpp
  3. 6
      components/dwin/text_displayer.cpp
  4. 1
      components/dwin/text_displayer.hpp
  5. 13
      components/dwin/var_icon.cpp
  6. 2
      components/dwin/var_icon.hpp
  7. 0
      components/zformater/zsimple_formater.cpp
  8. 32
      components/zformater/zsimple_formater.hpp

53
components/date/date_helper.cpp

@ -0,0 +1,53 @@
#include "date_helper.hpp"
using namespace iflytop;
using namespace std;
int DateHelper::getMaxDay(int year, int month) {
int daymax = 0;
switch (month) {
case 1:
daymax = 31;
break;
case 2:
if (year % 4 == 0) {
daymax = 29;
} else {
daymax = 28;
}
break;
case 3:
daymax = 31;
break;
case 4:
daymax = 30;
break;
case 5:
daymax = 31;
break;
case 6:
daymax = 30;
break;
case 7:
daymax = 31;
break;
case 8:
daymax = 31;
break;
case 9:
daymax = 30;
break;
case 10:
daymax = 31;
break;
case 11:
daymax = 30;
break;
case 12:
daymax = 31;
break;
default:
break;
}
return daymax;
}

9
components/date/date_helper.hpp

@ -0,0 +1,9 @@
#pragma once
namespace iflytop {
using namespace std;
class DateHelper {
public:
static int getMaxDay(int year, int month);
};
} // namespace iflytop

6
components/dwin/text_displayer.cpp

@ -11,6 +11,12 @@ using namespace std;
} }
static uint8_t txcache[256]; static uint8_t txcache[256];
bool TextDisplayer::init(DwinScreen *dwin_screen, uint16_t valsize) {
uint16_t descript_add = dwin_screen->alloc_one_text_displayer();
uint16_t val_add = dwin_screen->alloc_free_ram(valsize);
return init(dwin_screen, descript_add, val_add);
}
bool TextDisplayer::init(DwinScreen *dwin_screen, uint16_t descript_add, uint16_t val_add) { bool TextDisplayer::init(DwinScreen *dwin_screen, uint16_t descript_add, uint16_t val_add) {
// //
m_dwin_screen = dwin_screen; m_dwin_screen = dwin_screen;

1
components/dwin/text_displayer.hpp

@ -72,6 +72,7 @@ class TextDisplayer {
TextDisplayerDescript_t m_descript; TextDisplayerDescript_t m_descript;
public: public:
bool init(DwinScreen *dwin_screen, uint16_t valsize);
bool init(DwinScreen *dwin_screen, uint16_t descript_add, uint16_t val_add); bool init(DwinScreen *dwin_screen, uint16_t descript_add, uint16_t val_add);
/** /**
* @brief Set the Font object * @brief Set the Font object

13
components/dwin/var_icon.cpp

@ -20,6 +20,15 @@ bool VarIcon::init(DwinScreen *dwin_screen, uint16_t descript_add) {
readcfg(); readcfg();
return true; return true;
} }
// void VarIcon::initcfg(const char *pos, const char *iconpath, uint16_t initval) {
// int posx = 0;
// int posy = 0;
// sscanf(pos, "(%d,%d)", &posx, &posy);
// initcfg(m_dwin_screen->alloc_one_var_icon(), posx, posy, iconpath, initval);
// }
void VarIcon::initcfg(int x, int y, const char *iconpath, uint16_t initval) { initcfg(m_dwin_screen->alloc_one_var_icon(), x, y, iconpath, initval); }
void VarIcon::initcfg(uint16_t valpointerAdd, uint16_t posx, uint16_t posy, const char *iconpath, uint16_t initval) { void VarIcon::initcfg(uint16_t valpointerAdd, uint16_t posx, uint16_t posy, const char *iconpath, uint16_t initval) {
int iconlib = 0; int iconlib = 0;
int iconmin = 0; int iconmin = 0;
@ -80,6 +89,4 @@ void VarIcon::show() { _setVal(m_val); }
VarIconDescript_t &VarIcon::getDescript() { return m_descript; } VarIconDescript_t &VarIcon::getDescript() { return m_descript; }
bool VarIcon::_setVal(uint16_t val) {
return m_dwin_screen->write_varspace16(m_descript.m_VP, val, 100);
}
bool VarIcon::_setVal(uint16_t val) { return m_dwin_screen->write_varspace16(m_descript.m_VP, val, 100); }

2
components/dwin/var_icon.hpp

@ -49,6 +49,8 @@ class VarIcon {
* @param posy y坐标 * @param posy y坐标
* @param iconpath 47/1:1 iconlib/iconmin:iconmax * @param iconpath 47/1:1 iconlib/iconmin:iconmax
*/ */
// void initcfg(const char *pos, const char *iconpath, uint16_t initval);
void initcfg(int x, int y, const char *iconpath, uint16_t initval);
void initcfg(uint16_t valpointerAdd, uint16_t posx, uint16_t posy, const char *iconpath, uint16_t initval); void initcfg(uint16_t valpointerAdd, uint16_t posx, uint16_t posy, const char *iconpath, uint16_t initval);
public: public:

0
components/zformater/zsimple_formater.cpp

32
components/zformater/zsimple_formater.hpp

@ -0,0 +1,32 @@
#pragma once
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
namespace iflytop {
using namespace std;
class ZSimpleFormater {
private:
char* m_str;
public:
ZSimpleFormater(const char* fmt, ...) {
m_str = (char*)malloc(128);
va_list args;
va_start(args, fmt);
vsprintf(m_str, fmt, args);
va_end(args);
}
~ZSimpleFormater() {
if (m_str) {
free(m_str);
m_str = NULL;
}
};
const char* c_str() { return m_str; }
};
#define zsfmt ZSimpleFormater
} // namespace iflytop
Loading…
Cancel
Save