Skip to content

Commit

Permalink
upd
Browse files Browse the repository at this point in the history
  • Loading branch information
GyverLibs committed Nov 29, 2024
1 parent 29bc75e commit fbe5b7c
Show file tree
Hide file tree
Showing 4 changed files with 411 additions and 386 deletions.
15 changes: 11 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -733,8 +733,10 @@ bool Color(Text label = "", uint32_t* value = nullptr);

// ================= SWITCH =================
// переключатель [результат 1/0], подключаемая переменная - bool
bool Switch(size_t id, Text label = "", bool* value = nullptr);
bool Switch(Text label = "", bool* value = nullptr);
bool Switch(size_t id, Text label = "", bool* value = nullptr, uint32_t color = SETS_DEFAULT_COLOR);
bool Switch(size_t id, Text label, bool* value, Colors color);
bool Switch(Text label = "", bool* value = nullptr, uint32_t color = SETS_DEFAULT_COLOR);
bool Switch(Text label, bool* value, Colors color);

// ================= DATE =================
// дата [результат - unix секунды], подключаемая переменная - uint32_t
Expand All @@ -753,8 +755,10 @@ bool DateTime(Text label = "", uint32_t* value = nullptr);

// ================= SLIDER =================
// слайдер [результат - число], подключаемая переменная - любой тип
bool Slider(size_t id, Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr);
bool Slider(Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr);
bool Slider(size_t id, Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr, uint32_t color = SETS_DEFAULT_COLOR);
bool Slider(size_t id, Text label, float min, float max, float step, Text unit, AnyPtr value, Colors color);
bool Slider(Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr, uint32_t color = SETS_DEFAULT_COLOR);
bool Slider(Text label, float min, float max, float step, Text unit, AnyPtr value, Colors color);

// ================= SELECT =================
// опции разделяются ; [результат - индекс (число)], подключаемая переменная - uint8_t
Expand Down Expand Up @@ -881,6 +885,9 @@ void update(size_t id, <любой численный тип> value);
- Разбивка на пакеты для меньшего использования памяти
- Добавлен LabelFloat
- v1.1.12
- Добавлена поддержка цвета виджетам Slider и Switch
<a id="install"></a>
## Установка
- Библиотеку можно найти по названию **Settings** и установить через менеджер библиотек в:
Expand Down
2 changes: 1 addition & 1 deletion library.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name=Settings
version=1.1.11
version=1.1.12
author=AlexGyver <alex@alexgyver.ru>
maintainer=AlexGyver <alex@alexgyver.ru>
sentence=Simple UI webface builder for esp8266/esp32
Expand Down
49 changes: 33 additions & 16 deletions src/core/builder.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ class Builder {
}

// ================= GUEST =================

// разрешить неавторизованным клиентам следующий код
bool beginGuest() {
if (!build.granted) _enabled = true;
Expand All @@ -65,6 +66,7 @@ class Builder {
}

// ================= GROUP =================

// группа виджетов
bool beginGroup(Text title = Text()) {
return _beginContainer(Code::group, title);
Expand All @@ -74,6 +76,7 @@ class Builder {
}

// ================= ROW =================

// горизонтальная группа виджетов
bool beginRow(Text title = Text()) {
return _beginContainer(Code::row, title);
Expand All @@ -83,6 +86,7 @@ class Builder {
}

// ================= MENU =================

// вложенное меню
bool beginMenu(Text title) {
return _beginContainer(Code::menu, title);
Expand All @@ -92,6 +96,7 @@ class Builder {
}

// ================= BUTTONS =================

// ряд кнопок
bool beginButtons() {
return _beginContainer(Code::buttons);
Expand All @@ -107,13 +112,13 @@ class Builder {
void Label(size_t id, Text label = "", Text text = Text(), uint32_t color = SETS_DEFAULT_COLOR) {
_widget(Code::label, id, label, &text, color);
}
void Label(size_t id, Text label, Text text, sets::Colors color) {
void Label(size_t id, Text label, Text text, Colors color) {
Label(id, label, text, (uint32_t)color);
}
void Label(Text label = "", Text text = Text(), uint32_t color = SETS_DEFAULT_COLOR) {
Label(_NO_ID, label, text, color);
}
void Label(Text label, Text text, sets::Colors color) {
void Label(Text label, Text text, Colors color) {
Label(_NO_ID, label, text, (uint32_t)color);
}

Expand All @@ -123,15 +128,15 @@ class Builder {
_widget(Code::label, id, label, &text, color);
}
template <typename T>
void LabelNum(size_t id, Text label, T text, sets::Colors color) {
void LabelNum(size_t id, Text label, T text, Colors color) {
LabelNum(id, label, text, (uint32_t)color);
}
template <typename T>
void LabelNum(Text label, T text, uint32_t color = SETS_DEFAULT_COLOR) {
LabelNum(_NO_ID, label, text, color);
}
template <typename T>
void LabelNum(Text label, T text, sets::Colors color) {
void LabelNum(Text label, T text, Colors color) {
LabelNum(_NO_ID, label, text, (uint32_t)color);
}

Expand All @@ -142,13 +147,13 @@ class Builder {
_endWidget();
}
}
void LabelFloat(size_t id, Text label, float text, uint8_t dec, sets::Colors color) {
void LabelFloat(size_t id, Text label, float text, uint8_t dec, Colors color) {
LabelFloat(id, label, text, dec, (uint32_t)color);
}
void LabelFloat(Text label, float text, uint8_t dec = 2, uint32_t color = SETS_DEFAULT_COLOR) {
LabelFloat(_NO_ID, label, text, dec, color);
}
void LabelFloat(Text label, float text, uint8_t dec, sets::Colors color) {
void LabelFloat(Text label, float text, uint8_t dec, Colors color) {
LabelFloat(_NO_ID, label, text, dec, (uint32_t)color);
}

Expand Down Expand Up @@ -238,12 +243,18 @@ class Builder {

// ================= SWITCH =================
// переключатель [результат 1/0], подключаемая переменная - bool
bool Switch(size_t id, Text label = "", bool* value = nullptr) {
_widget(Code::toggle, id, label, value);
bool Switch(size_t id, Text label = "", bool* value = nullptr, uint32_t color = SETS_DEFAULT_COLOR) {
_widget(Code::toggle, id, label, value, color);
return _isSet(id, value);
}
bool Switch(Text label = "", bool* value = nullptr) {
return Switch(_next(), label, value);
bool Switch(size_t id, Text label, bool* value, Colors color) {
return Switch(id, label, value, (uint32_t)color);
}
bool Switch(Text label = "", bool* value = nullptr, uint32_t color = SETS_DEFAULT_COLOR) {
return Switch(_next(), label, value, color);
}
bool Switch(Text label, bool* value, Colors color) {
return Switch(_next(), label, value, (uint32_t)color);
}

// ================= DATE =================
Expand Down Expand Up @@ -278,8 +289,8 @@ class Builder {

// ================= SLIDER =================
// слайдер [результат - число], подключаемая переменная - любой тип
bool Slider(size_t id, Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr) {
if (_beginWidget(Code::slider, id, label, value)) {
bool Slider(size_t id, Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr, uint32_t color = SETS_DEFAULT_COLOR) {
if (_beginWidget(Code::slider, id, label, value, color)) {
p->addFloat(Code::min, min);
p->addFloat(Code::max, max);
p->addFloat(Code::step, step);
Expand All @@ -288,8 +299,14 @@ class Builder {
}
return _isSet(id, value);
}
bool Slider(Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr) {
return Slider(_next(), label, min, max, step, unit, value);
bool Slider(size_t id, Text label, float min, float max, float step, Text unit, AnyPtr value, Colors color) {
return Slider(id, label, min, max, step, unit, value, (uint32_t)color);
}
bool Slider(Text label = "", float min = 0, float max = 100, float step = 1, Text unit = Text(), AnyPtr value = nullptr, uint32_t color = SETS_DEFAULT_COLOR) {
return Slider(_next(), label, min, max, step, unit, value, color);
}
bool Slider(Text label, float min, float max, float step, Text unit, AnyPtr value, Colors color) {
return Slider(_next(), label, min, max, step, unit, value, (uint32_t)color);
}

// ================= SELECT =================
Expand All @@ -315,10 +332,10 @@ class Builder {
return Button(_next(), label, color);
}

bool Button(size_t id, Text label, sets::Colors color) {
bool Button(size_t id, Text label, Colors color) {
return Button(id, label, (uint32_t)color);
}
bool Button(Text label, sets::Colors color) {
bool Button(Text label, Colors color) {
return Button(_next(), label, (uint32_t)color);
}

Expand Down
Loading

0 comments on commit fbe5b7c

Please sign in to comment.