Docs: Use doxygen-awesome-css theme (#6512)

* add doxygen-theme-css submodule

* enable theme and disable not needed code references

* hide nav sync button

* css and cleanup

* Move comments to dedicated README to not fail config check
This commit is contained in:
tooomm 2026-01-24 11:22:43 +01:00 committed by GitHub
parent 12b5525a2d
commit 2b372c14e4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
12 changed files with 86 additions and 24 deletions

3
.gitmodules vendored
View File

@ -1,3 +1,6 @@
[submodule "vcpkg"]
path = vcpkg
url = https://github.com/microsoft/vcpkg.git
[submodule "doxygen-awesome-css"]
path = doc/doxygen/theme
url = https://github.com/jothepro/doxygen-awesome-css.git

View File

@ -54,7 +54,7 @@ PROJECT_NUMBER = $(COCKATRICE_REF)
# for a project that appears at the top of each page and should give viewers a
# quick idea about the purpose of the project. Keep the description short.
PROJECT_BRIEF = "A cross-platform virtual tabletop for multiplayer card games"
PROJECT_BRIEF = "A virtual tabletop for multiplayer card games"
# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
# in the documentation. The maximum height of the logo should not exceed 55
@ -1068,6 +1068,8 @@ RECURSIVE = YES
EXCLUDE = build/ \
cmake/ \
doc/doxygen/theme/docs/ \
doc/doxygen/theme/include/ \
vcpkg/ \
webclient/
@ -1430,7 +1432,9 @@ HTML_STYLESHEET =
# documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = doc/doxygen/css/doxygen_style.css
HTML_EXTRA_STYLESHEET = doc/doxygen/theme/doxygen-awesome.css \
doc/doxygen/css/hide_nav_sync.css \
doc/doxygen/css/cockatrice_docs_style.css
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note
@ -1453,7 +1457,7 @@ HTML_EXTRA_FILES = doc/doxygen/js/graph_toggle.js
# The default value is: AUTO_LIGHT.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_COLORSTYLE = AUTO_DARK
HTML_COLORSTYLE = LIGHT
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the style sheet and background images according to
@ -1764,7 +1768,7 @@ ECLIPSE_DOC_ID = org.doxygen.Project
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
DISABLE_INDEX = YES
DISABLE_INDEX = NO
# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
# structure should be generated to display hierarchical information. If the tag

View File

@ -49,4 +49,4 @@ searches are case insensitive.
<dt>Grouping:</dt>
<dd><a href="#red -([[]]:100 or aggro)">red -([[]]:100 or aggro)</a> <small>(Any deck that has red in its filename but is not 100 cards or has aggro in its filename)</small></dd>
</dl>
</dl>

View File

@ -67,4 +67,4 @@ In this list of examples below, each entry has an explanation and can be clicked
<dd>[o:/counter target .* spell/](#o:/counter target .* spell/) <small>(Any card text with "counter target *something* spell")</small></dd>
<dd>[o:/for each .* and\/or .*/](#o:/for each .* and\/or .*/) <small>(/'s can be escaped with a \)</small></dd>
</dl>
</dl>

View File

@ -7,7 +7,7 @@
<tab type="pages" visible="yes" title="" intro=""/>
<tab type="topics" visible="yes" title="" intro=""/>
<tab type="usergroup" title="Code Reference">
<tab type="modules" visible="yes" title="" intro="">
<tab type="modules" visible="no" title="" intro="">
<tab type="modulelist" visible="yes" title="" intro=""/>
<tab type="modulemembers" visible="yes" title="" intro=""/>
</tab>
@ -15,9 +15,8 @@
<tab type="namespacelist" visible="yes" title="" intro=""/>
<tab type="namespacemembers" visible="yes" title="" intro=""/>
</tab>
<tab type="concepts" visible="yes" title="">
</tab>
<tab type="interfaces" visible="yes" title="">
<tab type="concepts" visible="no" title=""/>
<tab type="interfaces" visible="no" title="">
<tab type="interfacelist" visible="yes" title="" intro=""/>
<tab type="interfaceindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="interfacehierarchy" visible="yes" title="" intro=""/>
@ -28,11 +27,11 @@
<tab type="hierarchy" visible="yes" title="" intro=""/>
<tab type="classmembers" visible="yes" title="" intro=""/>
</tab>
<tab type="structs" visible="yes" title="">
<tab type="structs" visible="no" title="">
<tab type="structlist" visible="yes" title="" intro=""/>
<tab type="structindex" visible="$ALPHABETICAL_INDEX" title=""/>
</tab>
<tab type="exceptions" visible="yes" title="">
<tab type="exceptions" visible="no" title="">
<tab type="exceptionlist" visible="yes" title="" intro=""/>
<tab type="exceptionindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="exceptionhierarchy" visible="yes" title="" intro=""/>
@ -41,7 +40,7 @@
<tab type="filelist" visible="yes" title="" intro=""/>
<tab type="globals" visible="yes" title="" intro=""/>
</tab>
<tab type="examples" visible="yes" title="" intro=""/>
<tab type="examples" visible="no" title="" intro=""/>
</tab>
</navindex>

14
doc/doxygen/README.md Normal file
View File

@ -0,0 +1,14 @@
## Doxygen Documentation Theme
Required changes to the `Doxyfile` config from the [theme docs](https://jothepro.github.io/doxygen-awesome-css/index.html#autotoc_md16) to make [doxygen-awesome-css](https://github.com/jothepro/doxygen-awesome-css) work:
```
HTML_EXTRA_STYLESHEET = doxygen-awesome.css # Main CSS file of the theme
GENERATE_TREEVIEW = YES # Optional, also works without
HTML_COLORSTYLE = LIGHT # Required with doxygen-awesome-css theme, Auto Dark Mode will still work
DISABLE_INDEX = NO # YES is bugged in the theme, see jothepro/doxygen-awesome-css/issues/201
FULL_SIDEBAR = NO # Required for doxygen-awesome-css theme
```
<br>
Cockatrice dedicated color adjustments are configured in the [cockatrice_docs_style.css](https://github.com/Cockatrice/Cockatrice/blob/master/doc/doxygen/css/cockatrice_docs_style.css) file that uses & overrides the theme definitions.

View File

@ -0,0 +1,33 @@
/*
See "Awesome Doxygen CSS" theme docs:
https://jothepro.github.io/doxygen-awesome-css/md_docs_2customization.html#autotoc_md36
Adjustments here are based on the css file of the theme and variables defined there.
*/
/* Light Mode overrides */
html {
--primary-color: #33a946;
--primary-dark-color: #33a946;
--primary-light-color: #33a946;
}
/* Dark Mode overrides */
@media (prefers-color-scheme: dark) {
html:not(.light-mode) {
--primary-color: #33a946;
--primary-dark-color: #33a946;
--primary-light-color: #33a946;
}
}
/* Dark Mode overrides, defined twice to support both the dark-mode without and with doxygen-awesome-darkmode-toggle.js */
html.dark-mode {
color-scheme: dark;
--primary-color: #33a946;
--primary-dark-color: #33a946;
--primary-light-color: #33a946;
}

View File

@ -0,0 +1,10 @@
/* hide navigation sync control and icons */
#nav-sync,
#nav-sync * {
display: none !important;
}
div.nav-sync-icon,
div.nav-sync-icon * {
display: none !important;
}

View File

@ -1,10 +1,8 @@
@mainpage Cockatrice Documentation
@mainpage Documentation
# Welcome
Welcome to the Cockatrice code documentation.
This is the **main landing page** of the Cockatrice documentation.
- @subpage user_reference
- @subpage developer_reference
- Go to the @subpage user_reference page
- Review the @subpage developer_reference
Or check out the <a href="https://cockatrice.github.io/" target="_blank" rel="noopener noreferrer">Cockatrice Webpage</a>.
Please also check the <a href="https://cockatrice.github.io/" target="_blank" rel="noopener noreferrer">Cockatrice Webpage</a> or our <a href="https://github.com/Cockatrice/Cockatrice" target="_blank" rel="noopener noreferrer">Code Repository</a> for general information.

View File

@ -1,17 +1,17 @@
@page user_reference User Reference
# Deck Management
## Deck Management
- @subpage creating_decks
- @subpage importing_decks
- @subpage editing_decks
- @subpage exporting_decks
# Release Channels
## Release Channels
- @subpage beta_release
# Syntax Help
## Syntax Help
- @subpage search_syntax_help
- @subpage deck_search_syntax_help
- @subpage deck_search_syntax_help

1
doc/doxygen/theme Submodule

@ -0,0 +1 @@
Subproject commit 1f3620084ff75734ed192101acf40e9dff01d848