Чтобы сдвинуться с мертвой точки, вот возможное решение:
Измените ожидания немного: вместо того, чтобы надеяться, что двухуровневая структура будет представлена читателям за один раз, смиритесь с представленной частью.вовремя.Заставьте пользователя щелкнуть по отдельной странице для каждого пространства имен в дереве:
На странице документации для пространства имен proj
показаны все содержащиеся в ней пакеты (т. Е. В примере показаны пространства именpkg1
и pkg2
).
На каждой странице пространства имен пакетов показаны все классы и пространства имен компонентов в ней (в отдельных списках, что немного раздражает, но по крайней мере все содержимое для каждого пакета объединено).
Вы можете скрыть древовидное представление с помощью GENERATE_TREEVIEW=NO
и скрыть строку заголовка DISABLE_INDEX=YES
.
Главная страница может быть просто ссылкой на верхний уровень proj
страница пространства имен (с обычным содержимым главной страницы, перемещенным в подробное описание proj
) с кодом, подобным следующему:
/**
@mainpage
@ref proj "Click here for the proj documentation"
*/
Небольшое изменение заключается в ручном перечислении пакетов на главной странице с помощьюкод, как это и обойти страницу пространства имен proj
.Это будет хорошо работать для проекта, у которого нет общего пространства имен верхнего уровня, или где вы хотите лучше контролировать главную страницу.
/**
@mainpage
Packages:
- @ref proj::pkg1 @n @copybrief proj::pkg1
- @ref proj::pkg2 @n @copybrief proj::pkg2
*/