• Собрать проект близкий к туториалу с модификациями в среде Qt
    5000 ₽ qt xml

    Оттолкнуться от:
    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, за счет этого сразу же линковать на нужную страничку при запуске справки

    --

    в коде желательно прописать комменты

Up