14 Commits

Author SHA1 Message Date
30ac54f77f feat: Release v3.5.0 with free-form text comments
- Добавлены свободные многострочные комментарии на схеме: создание через меню, перемещение мышью, редактирование и удаление.
- Реализовано хранение комментариев в JSON с устойчивыми идентификаторами, координатами и сохранением неизвестных полей.
- Все операции с комментариями включены в Undo/Redo; поддержаны схемы только с заметками и сохранение удаления последней заметки.
- Исправлены границы общего вида, неограниченный масштаб схемы с одной заметкой и завершение перетаскивания при панорамировании пробелом.
- Добавлены семь smoke-сценариев, проверки совместимости генератора и обновлено руководство пользователя.
- Версия приложения обновлена до 3.5.0.
2026-11-05 08:50:36 +03:00
f8f6a216f5 feat: add OTA updates and zero-based mapping
- Добавлена проверка и безопасная установка OTA-обновлений Windows с откатом.
- Нумерация линий и блоков переведена на индексы с нуля.
- Добавлена миграция старых JSON-схем с сохранением физической адресации.
- Обновлены генератор, сборка, документация и smoke-проверки.
- Подготовлена версия 3.3.0.
2026-09-18 10:37:21 +03:00
0b24cbd83c feat: add LED copy and paste in edit mode
- добавить команды копирования и вставки выбранных светодиодов в режиме редактирования
- назначить на новые команды настраиваемые сочетания Ctrl+C и Ctrl+V
- создавать свободные копии с уникальными идентификаторами и каскадным смещением по шагу сетки
- сохранять взаимное расположение и пользовательские поля копируемых точек
- объединить вставку группы в одну операцию Undo с восстановлением выделения через Redo
- не перехватывать стандартное копирование и вставку при редактировании текста и координат
- добавить пункты меню, иконки, документацию и проверки, расширив QA до 164 сценариев
2026-09-09 08:30:30 +03:00
0d4552ef35 Embed background images in mapping files
- встраивать исходное изображение подложки в JSON вместе с метаданными и контрольной суммой
- сохранять геометрию и параметры встроенной подложки при повторном редактировании
- показывать значение «Встроенная» в диалоге подложки до выбора замены
- загружать встроенное изображение непосредственно из JSON на холст
- защищать существующий файл схемы при ошибке чтения подложки
- расширить автоматические проверки до 161 сценария
2026-09-08 15:21:33 +03:00
f2108e053f release: prepare LED Mapper 3.1.0
- исправить точное и атомарное сохранение схем
- добавить настройку шага сетки и абсолютного размера LED
- добавить пакетное удаление выбранных блоков
- исключить генерацию устаревшего INO-файла
- синхронизировать сетку обычного режима и режима редактирования
- устранить движение схемы при переключении режима редактирования
- расширить автоматические проверки до 158 сценариев
2026-09-08 14:13:00 +03:00
c3b98d7fe8 Add new empty scheme creation action and support empty JSON load
- Добавлено действие Создать... (Ctrl+N) в меню Файл для инициализации нового файла схемы.
- Реализована автоматическая запись дефолтной схемы circles при открытии пустого или содержащего только пробелы json-файла.
- Добавлены соответствующие автоматические тесты в qa_smoke.py.
2026-07-31 14:54:27 +03:00
91189d6d37 Fix block and line name resetting upon saving document
- Изменены методы renumber_lines и renumber_blocks в models.py: теперь они переименовывают только стандартные (дефолтные) названия блоков/линий.
- Кастомные названия блоков и линий теперь полностью сохраняются при переиндексации (на сохранении).
- Добавлен интеграционный тест на сохранение/загрузку кастомных имен линий и блоков в qa_smoke.py.
2026-07-31 12:42:05 +03:00
2832914343 feat: Add counterclockwise routing and LED editing
- Добавлено автоматическое построение блока против часовой стрелки.
- Добавлено редактирование координат LED через контекстное меню.
- Добавлено перемещение светодиодов через Alt + ЛКМ.
- Убран лишний столбец "Источник" из таблицы выбранных LED.
- Индексы LED сделаны визуальной подсказкой, которая не мешает кликам и перетаскиванию точек.
- Добавлены проверки для новых сценариев редактирования, маршрутизации, таблицы и сборочного имени.
2026-06-11 08:49:58 +03:00
207d6ca86c fix: Accept raw JSON encodings
- Добавлена мягкая загрузка сырых JSON-файлов с корневым массивом точек.

- Исправляются trailing commas перед закрывающими скобками и числа вида 1173. без дробной части.

- При открытии файлов в UTF-16, UTF-16 LE/BE, CP1251 или CP1252 содержимое автоматически конвертируется и сохраняется в UTF-8.

- Добавлены smoke-проверки для сырого circle_centers JSON, CP1251 и UTF-16 LE без BOM.
2026-06-10 14:05:07 +03:00
3699586cc2 feat: Allow editing and deleting LED points
- Добавлено полное удаление выбранных LED-точек через контекстное меню холста, таблицы и горячую клавишу Ctrl+Del.

- Разрешено редактирование координат X и Y для всех точек схемы, а не только для созданных вручную.

- После удаления точек пересчитываются UID, связи блоков и индексы линий без повреждения маршрутов.

- UID в таблице теперь показывает исходный id точки, сохраняя внутренний идентификатор для выбора и операций.

- Добавлена настройка распределения высоты внутренних областей боковой панели.

- Расширены smoke-тесты на удаление точек, редактирование координат, пересчет блоков и состояние интерфейса.
2026-06-03 15:46:05 +03:00
ffa7be203e feat: Preserve mappings during generation
- Перед генерацией скрипта текущая схема теперь обязательно сохраняется.

- Для несохраненной схемы перед генерацией открывается диалог сохранения, а отмена останавливает генерацию.

- ordered_circles.json теперь сохраняет полный документ с метаданными, линиями, блоками, подложкой и unfolding.

- UID точек и point_ids блоков в ordered_circles.json пересчитываются под новый порядок генерации, а исходный id сохраняется в source_id.

- Неизвестные поля исходного JSON сохраняются при обычном сохранении и при генерации ordered_circles.json.

- Диалог выбора папки генерации теперь по умолчанию открывается в папке приложения.

- Добавлены smoke-проверки на сохранение полей, ремап UID и стартовую папку генерации.
2026-05-26 14:34:40 +03:00
d8c95a15e2 feat: Improve editor overlays and stability
- Добавлена подложка с видимостью, прозрачностью, масштабом, перемещением и редактированием через отдельное меню.

- Добавлен инструмент создания свободных светодиодов и редактирование X/Y для вручную созданных точек в таблице.

- Упрощена таблица выбранных LED: единый ID, координаты X/Y и UID в конце.

- Добавлены настраиваемые горячие клавиши для всех действий и переключатель отображения id светодиодов.

- Улучшена отрисовка линий: стрелки направления, изгибы при полном и частичном визуальном наложении сегментов.

- Оптимизировано переключение активных линий, выбор точек и поиск наложений соединений для снижения подвисаний.

- Исправлена логика ручных LED: row/col рассчитываются по сетке 34 мм, а ручные точки не сдвигают якорь сетки.

- Обновлена сборка EXE: имя использует тег, короткий хэш или дату/время для dirty-репозитория.

- Расширен smoke-набор до 113 проверок для новых функций и регрессий.
2026-05-25 13:39:59 +03:00
9f297b326f Release settings and shortcut customization 2026-05-21 16:58:28 +03:00
59bbad8288 Initial LED Mapper application 2026-05-21 08:16:32 +03:00