Ну погнали. Сначала косметика.
** Главное меню, изменить
Чемпионат\Новый -> Чемпионат\Создать
Чемпионат\Список чемпионатов -> Чемпионат\Открыть
Чемпионат\Сохранить чемпионат -> Чемпионат\Сохранить
Чемпионат\Экспортировать в HTML -> Чемпионат\Экспорт >
Настройки\Список дисциплин -> Настройки\Дисциплины
Настройки\Список игроков -> Настройки\Игроки
Настройки\Список команд -> Настройки\Команды
** Главное меню, добавить
Чемпионат\Закрыть //закрывает текущий таб
Чемпионат\Экспорт > HTML
Чемпионат\Экспорт > TXT (участники)
** Горячие клавиши, глобальные, добавить
Ctrl + N -> Чемпионат\Новый
Ctrl + O -> Чемпионат\Открыть
Ctrl + F4, Ctrl + W -> Чемпионат\Закрыть
** Горячие клавиши, локальные, добавить
*для табконтрола
DLMB -> Чемпионат\Закрыть
* для всех окон (пока они есть)
Esc -> Чемпионат\Закрыть
либо
Esc -> "Нет"
** Глобальный тулбар, добавить (если траблы с иконками, то пока просто кнопки со словами)
Настройки\Дисциплины
Настройки\Игроки
Настройки\Команды
** Тултипсы, изменить
Уменьшить время появления. Добавить названия горячих клавиш.
** Посев Dummy-игроков (<<Empty slot>>), изменить
Dummy должны сеяться, чтобы не встретиться не только в виннерах, но и в лузерах. Короче, через одного.
** Работа с .cfg, изменить
Если .cfg создан, а потом директория перенесена, то application.run.dir и data.path показывают в никуда. Добавить проверку путей при каждом запуске и отражать их в .cfg
** Опции экспорта, добавить
Пукт меню "Чемпионат\Экспорт > TXT (участники)" должен выплевывать plain txt с никами участников чемпа, разделенными переводом каретки.
** Мессейдж боксы, исправить
На всех сделать фокус на отрицательный ответ, иначе они не будут иметь смысла.
** Все листбоксы и гриды, добваить
При создании все гриды должны быть отсортированы по первой колонке в возрастающем. Все листбоксы - без сортировки.
DLMB на названии колонки должен сортировать грид по возрастанию/убыванию. DLMB на названии листбокса - переключать asc-desc-nosort.
** Все листбоксы и гриды, добваить
Видел такое только в кастомном компоненте грида под дельфю, схожая функциональность есть в MSAccess, но там этот edit сидит в контекстном меню грида.
Под названием колонки, в первом ряду все ячейки - edit. Если в них писать, то будет происходить риалтаймовая фильтрация. Написал "А" - в гриде остались только штуки, начинающиеся на "А".
** Информация о турнире, добавить
.время начала (время генерации) и время окончания (последний занесенный результат)
.количество участников, количество <<Empty slot>>
Добавлено через 45 минут(ы)
Уже посерьезнее.
** Окно результатов, изменить
При показе фокус на радиобаттонах, первый радиобаттон активирован. Up Arrow и Down Arrow должны переключать результат. Enter -> OK и Esc -> Отмена должны работать по всему окну.
** Режим Завершенные/Незавершенные матчи, добавить
Перед парой писать стадию чемпа ([1/8], [1/4L], [1/32W]). Сортировать по возрастанию стадии. Внутри стадии отображать в том же порядке, как в сетке.
** Режим Сетка (модерн)/(классика), добавить
DLMB на любом прямоугольнике - окно добавления результата
RMB - контекстное меню:
.результат матча
.изменить участника
.удалить участника
При изменении результата выдавать мессейджбокс с подтверждением отмены и пересчета зависимых матчей.
** Режим Сетка (модерн)/(классика), добавить
На стыке линий от двух игроков нужен какой-то визуальный элемент (
типа того), LMB на котором вызывает окно добавления результата
** Турнир, добавить
Undo и redo. Т. е. вести лог действий (добавление и изменение результатов и участников), который может быть <> ходам турнира. При этом в него не попадет редактирование списков.
** Режим Сетка (модерн)/(классика), исправить
Удаление участника не приводит к отмене результатов игр с ним.
** Окно "Новый чемпионат: Участники", изменить
Исключить из табстопов все, кроме грида и листбокса. При показе фокусить на грид.