Собрать проект близкий к туториалу с модификациями в среде Qt
Заказчик
Зарегистрирован на сайте 7 месяцев
Отзывы фрилансеров: +0 / 0 / -0
5000 ₽
Собрать проект близкий к туториалу с модификациями в среде Qt
5000 ₽
Оттолкнуться от:
https://www.walletfox.com/course/qhelpengineexample.php (файлы документации можно быстро генерировать с помощью helpndoc)
Отличия:
1) Можно без отрисовки фигур (достаточно сделать парочку дополнительных вкладок приложения рядом с Item и Help для разнообразия и проверки возможностей — например, Справка, Рабочая область 1, Рабочая область 2).
2) Не нужно делить общее окно на рабочую и справочную половины (при запуске приложения требуется только рабочая область с вкладками по другим разделам, а справку всегда выводить в отдельном окне по нажатию на f1 или по клику на вкладку Справка).
3) Добавить возможность отображения кастомной стартовой странички справки в зависимости от текущего открытого окна (Item, Help и других заданных выше)
--
грубо говоря, в примере адрес стартовой странички документации задавался следующим образом:
HelpBrowser *textViewer = new HelpBrowser(helpEngine);
textViewer->setSource(
QUrl("qthelp://walletfox.qt.helpexample/doc/index.html"));
а после доработки “index” будет меняться в строке адреса в зависимости от контекста (рабочей области / открытой вкладки) посмотреть, что лучше подойдет для решения этой задачи, но если получится сделать несколько реализаций, еще лучше.
--
Если свои варианты есть сходу, велком, а так вот идеи на подумать:
а) Например, использовать setContextHelp или setUserData для присваивания идентификатора рабочей области и сопоставления его с соответствующим Help ID в справке (в helpndoc можно установить его до компиляции qhc и qch файлов) для формирования ссылки
б) Либо использовать setProperty и вылавливать его значение для формирования ссылки
в) Либо в коде главного окна справки пробовать что-то вроде, чтобы идентифицировать рабочую область
QAction act = qobject_cast(sender());
int index = act->data().toInt();
но тогда нужно понимать, что index не меняется и его можно установить в файле справки для соответствующих параметров Help Context или Help ID, за счет этого сразу же линковать на нужную страничку при запуске справки