Closed GyverLibs closed 1 year ago
Вы забыли релиз 3.4 сделать)
Или это специально?
я спать ушёл да
GP.UPDATE("lbl1, lbl2, lbl3, lbl4");
GP.LABEL("NAN", "lbl1"); GP.LABEL("NAN", "lbl2"); GP.LABEL("NAN", "lbl3"); GP.LABEL("NAN", "lbl4");
void action() {
if (portal.update()) {
String i = "Kek";
portal.updateString("lbl1", i); // Обновляется
portal.updateString("lbl2", i); // обновляется
portal.updateString("lbl3", i); // Нет обновления
portal.updateString("lbl4", i); // Нет обновления итд.
}
}
Обновляются значения только у первых двух компонентов, дальше обновления не происходят. На v3.3 и 3,4 проверял.
список id должен быть без пробелов. Но это действительно баг, т.к. у меня сделано удаление пробелов через js, но оно удаляет только один)) спасибо за репорт
В примерах из раздела projects стоит BUILD_BEGIN(); а с 3,4 он перестал компилироваться, надо заменить на GP.BUILD_BEGIN(); и GP.BUILD_END(); соответственно.
всё таки пропустил)
в wiki не прописаны
// подключить функцию которая вызывается при ошибке
void attachError(void (*handler)(const String& UpdateError)) {
_OTAerror = *handler;
}
// отключить функцию которая вызывается при ошибке
void detachError() {
_OTAerror = nullptr;
}
нужно ли их вызывать, перед?
String error(); // вывести описание ошибки (например в label)
@DenysChuhlib поясни
@GyverLibs в новой версии этот код что-то не работает)
GP.FILE_MANAGER(&LittleFS); // передать ссылку на свою ф. систему (&LittleFS, &SPIFFS..) выводит список файлов из Flash памяти с кнопками для удаления (нужно настроить delete)
GP.SYSTEM_INFO(); // выводит таблицу системной информации
GP_VERSION;
на дисплее пусто
p.s. убрал GP.NAV_TABS_LINKS и все прогрузилось)
и как я вижу, для UI дизайн надо переделывать, иначе все разъезжается в ПК версии) в мобильной все ок
@Serega88kos
GP_VERSION;
это строка char*
, см. документацию. Её нужно куда-то вывести чтобы увидеть
для UI дизайн надо переделывать
Да вроде не надо, там такая же центральная колонка. Я тестировал на своих скетчах, сразу выглядело норм
в wiki не прописаны
// подключить функцию которая вызывается при ошибке void attachError(void (*handler)(const String& UpdateError)) { _OTAerror = *handler; } // отключить функцию которая вызывается при ошибке void detachError() { _OTAerror = nullptr; }
нужно ли их вызывать, перед?
String error(); // вывести описание ошибки (например в label)
Можно когда угодно
@GyverLibs поправил предыдущее сообщение, не знаю, прочитал ли исправление... В UI в ПК получается у меня так, надпись слева, поле ввода справа, между ними огромное пустое пространство)
M_BLOCK(GP_THIN, "",
"Настройки WIFI",
M_BOX(GP.LABEL("SSID"); GP.TEXT("ssid", "", w.ssid, "200px"); );
M_BOX(GP.LABEL("PASS"); GP.PASS("pass", "", w.pass, "200px"); ););
переходить на таблицы?)
Можно когда угодно
как его вызывать тогда? что-то у меня не получилось...
надпись слева, поле ввода справа, между ними огромное пустое пространство
всё верно. У UI по умолчанию ширина 1000 пикс, у BOX ширина 100% и выравнивание по краям. Либо уменьшать ширину UI, либо уменьшать ширину BOX, либо сложить всё в таблицу и задать ширину её или UI
Можно когда угодно
как его вызывать тогда? что-то у меня не получилось...
Придумай, там просто подключил функцию, и через сериал выводишь, например
по задумке error можно вывести в LABEL прямо под кнопкой OTA обновления. Если будет ошибка - он появится. Если плата перезагрузится - и лейбл чист - ошибки нет
@GyverLibs файл темы с глазом смотрю подправил, но у меня что-то не вернулся на нужное место...
GP.BUILD_BEGIN(GP_LIGHT);
GP.UI_BEGIN("Меню", "", "");
заголовок меню в мобильной версии на черном фоне, так и задумано?
у меня что-то не вернулся на нужное место...
обнови браузер и почисть кеш. Я специально скачал всяких говнобраузеров и проверил, глаз везде работает корректкно
заголовок меню в мобильной версии на черном фоне
в мобильной светлой теме верхний бар чёрный
Скачал новый, Brave, глаз за пределами.
ну тут мои полномочия всё)
по задумке error можно вывести в LABEL прямо под кнопкой OTA обновления.
это понятно, непонятно к чему привязать, никак не принимает компилятор... даже Денис ответил, придумай что-нибудь)
ну тут мои полномочия всё)
margin-left:260px;margin-top:-5px; мой старый вариант тут глаз плавает, в зависимости от ширины)
по задумке error можно вывести в LABEL прямо под кнопкой OTA обновления.
это понятно, непонятно к чему привязать, никак не принимает компилятор... даже Денис ответил, придумай что-нибудь)
Что не принимает? Покажи тогда
тут глаз плавает, в зависимости от ширины
что это за браузер?
тут глаз плавает, в зависимости от ширины
что это за браузер?
brave.com да и в любом другом...
SPINNER(): УБРАНА ШИРИНА, сделана автоширина, значение по центру
как теперь обходить этот момент. если спиннеров несколько и все разные значения, то уже не выходят все под одну ширину)
@MalfurionST у тебя тоже глазик барахлил, как сейчас дела?)
проблема явно где то у тебя. Вот хром/яндекс/brave/edge
не выходят все под одну ширину)
что нибудь придумаю upd. Сделал
сделал проще макрос и решил с таблицей)
M_TABLE(
M_TR(
GP.LABEL("SSID");
GP.TEXT("ssid", "", w.ssid););
M_TR(
GP.LABEL("PASS");
GP.PASS("pass", "", w.pass);););
вот в таком виде глаз идеально встает) а было так
M_BLOCK(GP_THIN, "", "Настройки WIFI",
M_BOX(GP.LABEL("SSID"); GP.TEXT("ssid", "", w.ssid, "150px"););
M_BOX(GP.LABEL("PASS"); GP.PASS("pass", "", w.pass, "150px");););
понятно, глаз убегает при использовании внутри THIN BLOCK. Но почему - непонятно, починим)
Просматривая файлы в глаз кинулся нюансик.
#define M_TR10(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) M_TR8(a1,a2,a3,a4,a5,a6,a7,a8,a9); GP.TD(); a10;
Может там должен быть M_TR9 а не 8?
Жесть это теперь мощный инструмент, у меня глаза розбегаються в bilder.h
Может там должен быть M_TR9
фига ты глазастый) сейчас пойду фиксить
@DenysChuhlib ты в canvas загляни ещё)
@DenysChuhlib ты в canvas загляни ещё)
Я видел, надо будет разобраться
@GyverLibs предложение, вывод системной информации сделать компактнее, не через строчку. Места больно много занимает)
а оно не через строчку... что то поломалось, строки таблицы раздулись. Перед загрузкой релиза всё было окей)))
залил текущие фиксы, можно забирать
В UI меню, если сделать длинное название ссылки (различные настройки), до получаются две строки и выравнивание посередине. Глаз заработал. Информация компактная. Спиннер, ширина работает.
пофиксил
все ок.
такой вариант GP.LABEL(String(day + "/" + month + "/" + year));
через GP.SEND();
делать?)
GP.LABEL
уже выводит текст на страницу...
ругается на оператор +
по отдельности выводит, но интервал между ними большой
ругается на оператор +
Уже в который раз отправляю читать про стринги https://alexgyver.ru/lessons/strings/
словил баг, ссылка выровнялась на середину, возможно из-за таблицы, экспериментировал с шириной колонок.
Баг на спиннере, когда меняешь значения, сбивается ширина.
У спиннера автоширина
с пк такого прикола нет, а с мобильного есть)
Блин не понял, покажи подробнее
Спин с фиксированной шириной на мобиле не меняет ширину при нажатии у меня
v3.5
TODO v3.5
curl -vF firmware=@firmware.bin http://x.x.x.х/GP_OTAupload
ROADMAP