доработки по интерфейсу

This commit is contained in:
2026-08-14 15:41:09 +03:00
parent 035792aedd
commit 49332aa028
4 changed files with 58 additions and 21 deletions

View File

@@ -123,13 +123,16 @@ void formatMenuLine(const char *label, const char *value, char *out, size_t size
snprintf(out, size, "%s%*s%s", label, padding, "", value);
}
uint32_t overallProgress(uint32_t stageIndex, uint8_t step) {
if (step > MEASUREMENT_PROGRESS_STEPS) step = MEASUREMENT_PROGRESS_STEPS;
return stageIndex * MEASUREMENT_PROGRESS_STEPS + step;
uint32_t overallProgress(uint32_t stageIndex, uint8_t step,
uint8_t stepsPerStage = MEASUREMENT_PROGRESS_STEPS) {
if (step > stepsPerStage) step = stepsPerStage;
return stageIndex * stepsPerStage + step;
}
uint32_t overallProgressTotal(uint32_t stageCount) {
return stageCount * MEASUREMENT_PROGRESS_STEPS;
uint32_t overallProgressTotal(
uint32_t stageCount,
uint8_t stepsPerStage = MEASUREMENT_PROGRESS_STEPS) {
return stageCount * stepsPerStage;
}
uint32_t stageWallTimeMs(uint32_t testTimeMs, uint32_t frequencyHz) {
@@ -1536,10 +1539,13 @@ void App::showDriverResult(const DriverStats &s, bool testPassed) {
snprintf(two, sizeof(two), UiText::DRIVER_MEASUREMENT_FORMAT,
delay, response);
}
const bool finished = testPassed || s.reason != FailReason::NONE;
const uint8_t progressSteps = driverTest_.progressSteps();
display_.show(one, two,
overallProgress(stageIndex_, driverTest_.progressStep()),
overallProgressTotal(stageCount_), s.reason == FailReason::NONE ? nullptr :
roleCorner(Role::SOLO));
finished ? 0U : overallProgress(
stageIndex_, driverTest_.progressStep(), progressSteps),
finished ? 0U : overallProgressTotal(stageCount_, progressSteps),
s.reason == FailReason::NONE ? nullptr : roleCorner(Role::SOLO));
}
void App::showRemoteResult(const ProtocolPacket &packet) {