# Кнопки приказов подсказки и перемещение карты

Доработка основного сайта по изображению пользователя. Буквенные G/F, знак «+» и дополнительная серая рамка заменены исходной графикой. Кнопки используют родной размер 32×32; нормальное состояние — Art/interface/NormButtons.pcx, наведение — RollOverButtons.pcx, нажатие/активный режим — HighlightedButtons.pcx. Везде применена исходная маска ButtonAlpha. Неактивные кнопки приглушаются в интерфейсе.

Основные координаты значков сопоставлены с unit_control.lua закреплённого OpenCiv3. Для основания/присоединения используется один исходный городской значок с контекстом: B основывает город либо присоединяет жителей там, где это действие доступно. Дорожная кнопка показывает железную дорогу, если на клетке уже есть дорога. Общая кнопка работ использует родную кирку.

У кнопок есть подсказки по наведению и клавиатурному фокусу. Они содержат название, клавишу, смысл и причину запрета: нет движения, нужна технология, нужен свой город, действие недоступно этому юниту и другие причины общей проверки команды. Причину можно прочитать и у серой кнопки. Знак действия не заменяется буквой клавиши; клавиша остаётся в подсказке.

Карту можно перетаскивать левой или средней кнопкой мыши и одним пальцем. Порог жеста — 6 пикселей: короткое нажатие сохраняет обычный выбор клетки. После перетаскивания подавляется случайный щелчок. Это действует и при включённом режиме G: перетаскивание не отправляет юнит, режим выбора назначения сохраняется. По краям добавлено свободное пространство, чтобы небольшой фиксированный мир тоже было удобно сдвигать.

Камера меняет только scrollLeft/scrollTop контейнера. Юниты, приказы, фаза хода, PRNG и собственное сохранение не меняются. Положение обзора не включено в файл партии. При старте выбранный юнит центрируется с учётом пространства вокруг холста.

При проверке касания исправлена ошибка передачи Pointer Capture: событие потери захвата дочерним canvas больше не завершает жест, уже переданный контейнеру. Для карты сохраняется возможность штатного pinch-zoom браузера; однопальцевое перемещение обрабатывается приложением.

[Проверка настоящего Chromium](data/browser-command-pan-verification.json) проверяет размер/рамку, исходные hover/pressed, подсказки мышью/фокусом, причину запрета, перетаскивание левой/средней кнопкой и касанием, неизменность партии, короткий щелчок и контекстный B. Это проверка удобства и нашего интерфейса, а не утверждение о полном воспроизведении всех состояний Windows.

[Снимок кнопок и подсказки](data/command-buttons-tooltip.png) · [Карта после перетаскивания](data/map-drag.png)

[Ход разработки](../development-progress.md) · [Описание инфраструктуры](infrastructure-model.md)


Дополнение: [спираль завершения хода, подсветка пути и занятые рабочие](turn-button-and-routes.md) описаны отдельно. Прямоугольная кнопка заменена исходной спиралью в углу правой панели.

Уточнение по замечанию пользователя: перемещение теперь требует явного включения кнопкой или G. Обычный щелчок выбирает/осматривает, маршрут до включения режима не показывается. Повторная кнопка/G, Escape или правая кнопка отменяют режим; после успешного приказа он выключается.
