Disable custom Doxygen theme support for CHM generation

Unsurprisingly, this doesn't work at all with CHM, so allow disabling
using the custom theme when doing it by adding more custom variables.

Using (multiple) variables for this is rather ugly, but we already use
them for other options, so it seems better to keep adding them rather
than using some other mechanism.

Adding a different custom header file is even uglier, but it seems to be
the only way to avoid including the theme JS files into CHM.
This commit is contained in:
Vadim Zeitlin 2022-07-02 16:32:31 +01:00
parent 1a53e80bf7
commit ba7894fca4
4 changed files with 63 additions and 10 deletions

View file

@ -353,14 +353,11 @@ IGNORE_PREFIX = wx
GENERATE_HTML = $(GENERATE_HTML)
HTML_OUTPUT = $(WX_HTML_OUTPUT_DIR)
HTML_FILE_EXTENSION = .html
HTML_HEADER = custom_header.html
HTML_HEADER = $(HTML_HEADER)
HTML_FOOTER = custom_footer.html
HTML_STYLESHEET =
HTML_EXTRA_STYLESHEET = doxygen-awesome-css/doxygen-awesome.css \
extra_stylesheet.css
HTML_EXTRA_FILES = doxygen-awesome-css/doxygen-awesome-darkmode-toggle.js \
doxygen-awesome-css/doxygen-awesome-fragment-copy-button.js \
wxwidgets.js
HTML_EXTRA_STYLESHEET = $(CUSTOM_THEME_CSS) extra_stylesheet.css
HTML_EXTRA_FILES = $(CUSTOM_THEME_JS1) $(CUSTOM_THEME_JS2) wxwidgets.js
HTML_COLORSTYLE_HUE = 220 # Default: 220
HTML_COLORSTYLE_SAT = 255 # Default: 100
HTML_COLORSTYLE_GAMMA = 100 # Default: 80
@ -572,7 +569,7 @@ CALL_GRAPH = NO
CALLER_GRAPH = NO
GRAPHICAL_HIERARCHY = NO # TODO: Default: YES
DIRECTORY_GRAPH = NO # Default: YES
DOT_IMAGE_FORMAT = svg
DOT_IMAGE_FORMAT = $(DOT_IMAGE_FORMAT)
INTERACTIVE_SVG = NO
DOT_PATH =
DOTFILE_DIRS =

View file

@ -0,0 +1,45 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<!--BEGIN PROJECT_NAME--><title>$projectname: $title</title><!--END PROJECT_NAME-->
<!--BEGIN !PROJECT_NAME--><title>$title</title><!--END !PROJECT_NAME-->
<link href="$relpath$tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="$relpath$jquery.js"></script>
<script type="text/javascript" src="$relpath$dynsections.js"></script>
$treeview
$search
$mathjax
<link href="$relpath$$stylesheet" rel="stylesheet" type="text/css" />
$extrastylesheet
</head>
<body>
<div id="page_container">
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<!--BEGIN TITLEAREA-->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" style="width: 100%;">
<tbody>
<tr>
<!--BEGIN PROJECT_LOGO-->
<td id="projectlogo">
<a href="https://www.wxwidgets.org/" target="_new">
<img alt="wxWidgets" src="$relpath$$projectlogo"/>
</a>
</td>
<!--END PROJECT_LOGO-->
<td style="padding-left: 0.5em; text-align: right;">
<!--BEGIN PROJECT_NUMBER--><span id="projectnumber">Version: $projectnumber</span><!--END PROJECT_NUMBER-->
</td>
<!--BEGIN DISABLE_INDEX-->
<!--BEGIN SEARCHENGINE-->
<td>$searchbox</td>
<!--END SEARCHENGINE-->
<!--END DISABLE_INDEX-->
</tr>
</tbody>
</table>
</div>
<!--END TITLEAREA-->

View file

@ -1,8 +1,7 @@
@echo off
REM This bash script regenerates the HTML doxygen version of the
REM wxWidgets manual and adjusts the doxygen log to make it more
REM readable.
REM This batch script is used to regenerate the CHM doxygen version of the
REM wxWidgets manual.
where /q doxygen
if %ERRORLEVEL% neq 0 (
@ -23,6 +22,10 @@ pushd ..\..
set WXWIDGETS=%CD%
popd
REM SVG is not supported by CHM and we can't/don't need to use custom JS with it.
set HTML_HEADER=custom_header_simple.html
set DOT_IMAGE_FORMAT=png
REM Defaults for settings controlled by this script
set GENERATE_DOCSET=NO
set GENERATE_HTML=NO

View file

@ -62,6 +62,14 @@ mkdir -p $WX_HTML_OUTPUT_DIR/generic
# custom aliases
cp images/generic/*png $WX_HTML_OUTPUT_DIR/generic
# These values are always used here, the corresponding options only exist in
# order to allow not using them when generating CHM in regen.bat.
export DOT_IMAGE_FORMAT='svg'
export HTML_HEADER='custom_header.html'
export CUSTOM_THEME_CSS='doxygen-awesome-css/doxygen-awesome.css'
export CUSTOM_THEME_JS1='doxygen-awesome-css/doxygen-awesome-darkmode-toggle.js'
export CUSTOM_THEME_JS2='doxygen-awesome-css/doxygen-awesome-fragment-copy-button.js'
# Defaults for settings controlled by this script
export GENERATE_DOCSET="NO"
export GENERATE_HTML="NO"