diff --git "a/doc/\320\237\320\273\320\260\320\275.txt" "b/doc/\320\237\320\273\320\260\320\275.txt" index 56800322..35776694 100644 --- "a/doc/\320\237\320\273\320\260\320\275.txt" +++ "b/doc/\320\237\320\273\320\260\320\275.txt" @@ -1,5 +1,6 @@ - Исправить ввод значений в поле ввода ++ Задействовать пикалку + Подлючить флешку. + Оживить дисплей, чтобы на нём что-то двигалось при работе. + Выводить сообщение о том, что кнопки заблокированы (когда идёт тест). diff --git a/sources/Panel/src/Connector/Device/Value_p.cpp b/sources/Panel/src/Connector/Device/Value_p.cpp index 953447ef..d2dece1f 100644 --- a/sources/Panel/src/Connector/Device/Value_p.cpp +++ b/sources/Panel/src/Connector/Device/Value_p.cpp @@ -122,6 +122,11 @@ void DrawStruct::PressKey(int _key) index++; } } + else if (key == Key::Esc) + { + symbols[0] = '\0'; + index = 0; + } else if (key >= Key::_1 && key <= Key::_0) { if ((key == Key::_0 && index == 0) || @@ -143,11 +148,25 @@ void DrawStruct::SetSymbolToCurrentPos(char symbol) { if (index < SIZE_BUFER - 1) { - symbols[index++] = symbol; + if (index >= NumSymbols()) + { + symbols[index++] = symbol; + symbols[index] = '\0'; + } + else + { + symbols[index++] = symbol; + } } } +int DrawStruct::NumSymbols() const +{ + return (int)std::strlen(symbols); +} + + bool DrawStruct::ConsistDot() const { for (uint i = 0; i < std::strlen(symbols); i++) diff --git a/sources/Panel/src/Menu/Pages/PageSignal1.cpp b/sources/Panel/src/Menu/Pages/PageSignal1.cpp index 3f8a1147..4348d8f2 100644 --- a/sources/Panel/src/Menu/Pages/PageSignal1.cpp +++ b/sources/Panel/src/Menu/Pages/PageSignal1.cpp @@ -77,7 +77,7 @@ namespace PageSignal1 { char buffer[128]; - Text("%s : %s Ri: %s", VoltageMode::TextValue(), Duration(param_t1, param_N).ToStringValue(buffer), VoltageMode::Is12() ? "10 " : "50 ").Write( + Text("%s Ri: %s : %s", VoltageMode::TextValue(), VoltageMode::Is12() ? "10 " : "50 ", Duration(param_t1, param_N).ToStringValue(buffer)).Write( Display::xConstParameters, Display::yConstParameters, Color::WHITE ); } diff --git a/sources/Panel/src/Menu/Pages/PageSignal2a.cpp b/sources/Panel/src/Menu/Pages/PageSignal2a.cpp index ed208fe8..a2936e0f 100644 --- a/sources/Panel/src/Menu/Pages/PageSignal2a.cpp +++ b/sources/Panel/src/Menu/Pages/PageSignal2a.cpp @@ -63,7 +63,9 @@ namespace PageSignal2a static void AdditionDraw() { - Text("%s Ri: 2 ", VoltageMode::TextValue()).Write( + char buffer[128]; + + Text("%s Ri: 2 : %s", VoltageMode::TextValue(), Duration(param_t1, param_N).ToStringValue(buffer)).Write( Display::xConstParameters, Display::yConstParameters, Color::WHITE ); } diff --git a/sources/Panel/src/Menu/Pages/PageSignal3a.cpp b/sources/Panel/src/Menu/Pages/PageSignal3a.cpp index 09cbfc89..91b536c1 100644 --- a/sources/Panel/src/Menu/Pages/PageSignal3a.cpp +++ b/sources/Panel/src/Menu/Pages/PageSignal3a.cpp @@ -54,7 +54,9 @@ namespace PageSignal3a static void AdditionDraw() { - Text("%s Ri: 50 ", VoltageMode::TextValue()).Write( + char buffer[128]; + + Text("%s Ri: 50 : %s", VoltageMode::TextValue(), Duration(1.0f, param_N).ToStringValue(buffer)).Write( Display::xConstParameters, Display::yConstParameters, Color::WHITE ); } diff --git a/sources/Panel/src/Menu/Pages/PageSignal3b.cpp b/sources/Panel/src/Menu/Pages/PageSignal3b.cpp index 40d83aac..eaca3322 100644 --- a/sources/Panel/src/Menu/Pages/PageSignal3b.cpp +++ b/sources/Panel/src/Menu/Pages/PageSignal3b.cpp @@ -54,7 +54,9 @@ namespace PageSignal3b static void AdditionDraw() { - Text("%s Ri: 50 ", VoltageMode::TextValue()).Write( + char buffer[128]; + + Text("%s Ri: 50 : %s", VoltageMode::TextValue(), Duration(1.0f, param_N).ToStringValue(buffer)).Write( Display::xConstParameters, Display::yConstParameters, Color::WHITE ); } diff --git a/sources/Panel/src/Settings/Settings.cpp b/sources/Panel/src/Settings/Settings.cpp index 4639577f..d6144f50 100644 --- a/sources/Panel/src/Settings/Settings.cpp +++ b/sources/Panel/src/Settings/Settings.cpp @@ -217,6 +217,14 @@ Duration::Duration(const Parameter &period, const Parameter &N) } +Duration::Duration(float periodSec, const Parameter &N) +{ + Value val_N = N.GetValue(); + + timeMS = (uint)(periodSec * 1000.f * (float)val_N.ToInt()); +} + + pchar Duration::ToStringValue(char buffer[128]) const { if (RemainingTimeCounter::InProcess()) diff --git a/sources/Panel/src/Settings/Settings.h b/sources/Panel/src/Settings/Settings.h index 8d23a04e..dadf14b6 100644 --- a/sources/Panel/src/Settings/Settings.h +++ b/sources/Panel/src/Settings/Settings.h @@ -8,6 +8,7 @@ struct Duration { Duration(const Parameter &period, const Parameter &N); + Duration(float periodSec, const Parameter &N); pchar ToStringValue(char buffer[128]) const; diff --git a/sources/Panel/src/defines.h b/sources/Panel/src/defines.h index a11718d0..758d597d 100644 --- a/sources/Panel/src/defines.h +++ b/sources/Panel/src/defines.h @@ -2,9 +2,9 @@ #pragma once #include "no-warnings.h" -#define VERSION_BUILD 31 +#define VERSION_BUILD 32 -#define DATE_BUILD "2025-02-11 10:48:41" +#define DATE_BUILD "2025-02-11 11:26:30" #include diff --git a/sources/common/Connector/Device/Value_.h b/sources/common/Connector/Device/Value_.h index 21c51377..6569b687 100644 --- a/sources/common/Connector/Device/Value_.h +++ b/sources/common/Connector/Device/Value_.h @@ -26,6 +26,7 @@ struct DrawStruct private: bool ConsistDot() const; void SetSymbolToCurrentPos(char); + int NumSymbols() const; Parameter *parameter; int index; // . 0 - "-", static const int SIZE_BUFER = 10; //