2022-08-08 04:20:47 +08:00
|
|
|
cmake_minimum_required(VERSION 3.16)
|
|
|
|
|
2022-09-03 04:59:41 +08:00
|
|
|
add_custom_target(JKQTMathText_GenerateDocImages
|
|
|
|
COMMENT "Building JKQTMathText Documentation Images ..."
|
|
|
|
)
|
|
|
|
|
|
|
|
add_custom_target(JKQTPlotter_GenerateDocScreenshots
|
|
|
|
COMMENT "Building JKQTPlotter Documentation Screenshots ..."
|
|
|
|
)
|
|
|
|
|
|
|
|
add_custom_target(JKQTPlotter_GenerateDocImages
|
|
|
|
COMMENT "Building JKQTPlotter Documentation Images ..."
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
add_custom_target(JKQTP_GenerateAllDocImages
|
|
|
|
DEPENDS JKQTPlotter_GenerateDocImages JKQTPlotter_GenerateDocScreenshots JKQTMathText_GenerateDocImages
|
|
|
|
)
|
2022-08-08 04:20:47 +08:00
|
|
|
|
|
|
|
if(JKQtPlotter_BUILD_TOOLS)
|
|
|
|
|
|
|
|
# custom target that generates the images for the JKQTMathText documentation
|
2022-08-18 05:13:30 +08:00
|
|
|
set(JKQTMathText_GenerateDocImages_DefaultOptions --resolution=96 --fontsize=15 --fontmathroman=XITS --background=white --sizeincrease=5)
|
2022-08-08 04:20:47 +08:00
|
|
|
set(JKQTMathText_GenerateDocImages_StdInputFiles
|
|
|
|
jkqtmathtext_docimages_accents.jkmt
|
|
|
|
jkqtmathtext_docimages_boxes.jkmt
|
|
|
|
jkqtmathtext_docimages_braces.jkmt
|
|
|
|
jkqtmathtext_docimages_formating.jkmt
|
|
|
|
jkqtmathtext_docimages_frac.jkmt
|
|
|
|
jkqtmathtext_docimages_math.jkmt
|
|
|
|
jkqtmathtext_docimages_matrix.jkmt
|
|
|
|
jkqtmathtext_docimages_misc.jkmt
|
|
|
|
jkqtmathtext_docimages_specialfonts.jkmt
|
|
|
|
jkqtmathtext_docimages_symbolsandencoding.jkmt
|
2022-08-08 16:39:15 +08:00
|
|
|
jkqtmathtext_docimages_spaces.jkmt
|
2022-08-08 04:20:47 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
set(JKQTMathText_GenerateDocImages_COMMAND $<TARGET_FILE:jkqtmathtext_render> ${JKQTMathText_GenerateDocImages_DefaultOptions})
|
|
|
|
set(JKQTMathText_GenerateDocImages_OutputDir "${CMAKE_CURRENT_LIST_DIR}/images/jkqtmathtext/")
|
|
|
|
|
|
|
|
foreach(file ${JKQTMathText_GenerateDocImages_StdInputFiles})
|
|
|
|
string(REGEX MATCH ".*_([^_\.]+)\.[A-Za-z]+" dummy ${file})
|
|
|
|
set(loc_name ${CMAKE_MATCH_1})
|
|
|
|
string(TOUPPER ${loc_name} loc_name_upper ${file})
|
|
|
|
set(loc_target_name "JKQTMathText_GenerateDocImages_${loc_name}")
|
|
|
|
|
|
|
|
add_custom_target(${loc_target_name}
|
|
|
|
COMMENT "Building JKQTMathText Documentation Images: ${loc_name_upper}"
|
|
|
|
COMMAND ${JKQTMathText_GenerateDocImages_COMMAND} --inputfile="${CMAKE_CURRENT_LIST_DIR}/${file}" --outputdir="${JKQTMathText_GenerateDocImages_OutputDir}"
|
|
|
|
WORKING_DIRECTORY ${JKQtPlotter_QT_BINDIR}
|
|
|
|
DEPENDS jkqtmathtext_render
|
|
|
|
)
|
|
|
|
|
|
|
|
add_dependencies(JKQTMathText_GenerateDocImages ${loc_target_name})
|
|
|
|
|
|
|
|
unset(loc_name)
|
|
|
|
unset(loc_target_name)
|
|
|
|
unset(loc_name_upper)
|
|
|
|
unset(dummy)
|
|
|
|
endforeach()
|
|
|
|
|
|
|
|
add_custom_target(JKQTMathText_GenerateDocImages_listsymbols
|
|
|
|
COMMENT "Building JKQTMathText Documentation Images: LISTSYMBOLS"
|
2022-09-01 20:36:34 +08:00
|
|
|
COMMAND ${JKQTMathText_GenerateDocImages_COMMAND} --listsymbolsfonts=XITS_MATHANDTEXT,FIRA_MATHANDTEXT --listsymbols="${CMAKE_CURRENT_LIST_DIR}/dox/jkqtmathtext_supportedlatexsymbols.dox" --outputdir="${JKQTMathText_GenerateDocImages_OutputDir}/symbols/"
|
2022-08-08 04:20:47 +08:00
|
|
|
WORKING_DIRECTORY ${JKQtPlotter_QT_BINDIR}
|
|
|
|
DEPENDS jkqtmathtext_render
|
|
|
|
)
|
|
|
|
|
|
|
|
add_dependencies(JKQTMathText_GenerateDocImages JKQTMathText_GenerateDocImages_listsymbols)
|
|
|
|
endif()
|
2022-08-26 18:31:27 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-09-03 04:59:41 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(JKQtPlotter_BUILD_TOOLS)
|
|
|
|
|
|
|
|
# custom target that generates the images for the JKQTPlotter documentation
|
|
|
|
set(JKQTPlotter_GenerateDocImages_DefaultOptions )
|
|
|
|
|
|
|
|
|
|
|
|
set(JKQTPlotter_GenerateDocImages_COMMAND $<TARGET_FILE:jkqtplotter_doc_imagegenerator> ${JKQTPlotter_GenerateDocImages_DefaultOptions})
|
|
|
|
set(JKQTPlotter_GenerateDocImages_OutputDir "${CMAKE_CURRENT_LIST_DIR}/images/")
|
|
|
|
|
|
|
|
|
|
|
|
add_custom_target(JKQTPlotter_GenerateDocImages_listplotsymbols
|
|
|
|
COMMENT "Building JKQTPlotter Documentation Images: LISTPLOTSYMBOLS"
|
|
|
|
COMMAND ${JKQTPlotter_GenerateDocImages_COMMAND} --listsymbols --iconsize=32 --outputdir="${JKQTPlotter_GenerateDocImages_OutputDir}/symbols/"
|
|
|
|
WORKING_DIRECTORY ${JKQtPlotter_QT_BINDIR}
|
|
|
|
DEPENDS jkqtplotter_doc_imagegenerator
|
|
|
|
)
|
|
|
|
add_dependencies(JKQTPlotter_GenerateDocImages JKQTPlotter_GenerateDocImages_listplotsymbols)
|
2022-09-06 17:07:52 +08:00
|
|
|
|
|
|
|
add_custom_target(JKQTPlotter_GenerateDocImages_listlinedecorators
|
|
|
|
COMMENT "Building JKQTPlotter Documentation Images: LISTLINEDECORATORS"
|
|
|
|
COMMAND ${JKQTPlotter_GenerateDocImages_COMMAND} --listlinedecorators --iconsize=32 --outputdir="${JKQTPlotter_GenerateDocImages_OutputDir}/linedecorators/"
|
|
|
|
WORKING_DIRECTORY ${JKQtPlotter_QT_BINDIR}
|
|
|
|
DEPENDS jkqtplotter_doc_imagegenerator
|
|
|
|
)
|
|
|
|
add_dependencies(JKQTPlotter_GenerateDocImages JKQTPlotter_GenerateDocImages_listlinedecorators)
|
|
|
|
|
2022-09-03 04:59:41 +08:00
|
|
|
endif(JKQtPlotter_BUILD_TOOLS)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-08-26 18:31:27 +08:00
|
|
|
if(JKQtPlotter_BUILD_EXAMPLES)
|
|
|
|
|
|
|
|
# custom target that generates the images for the JKQTMathText documentation
|
2022-08-27 04:41:10 +08:00
|
|
|
set(JKQTPlotter_GenerateDocScreenshots_DefaultOptions --screenshotdir="${CMAKE_CURRENT_LIST_DIR}/../screenshots/" --screenshot --disablehighdpi --smallscreenshotplot)
|
2022-08-27 04:32:48 +08:00
|
|
|
# list examples for which to save a screenshot
|
|
|
|
# the output basename equals the example name in this list,
|
|
|
|
# unless you specify the basenames by adding it/them after a slash '/'
|
|
|
|
# e.g. "barchart/barchart,barchart_hor"
|
2022-08-29 04:48:14 +08:00
|
|
|
# the basenames are applied to the windows in the order of their windowTitle()s!
|
2022-08-26 18:31:27 +08:00
|
|
|
set(JKQTPlotter_GenerateDocScreenshots_From
|
2022-08-30 03:46:38 +08:00
|
|
|
scatter/scatter,scatter_error
|
2022-08-27 04:32:48 +08:00
|
|
|
simpletest
|
2022-08-29 04:48:14 +08:00
|
|
|
barchart/barchart,barchart_hor
|
2022-08-27 04:32:48 +08:00
|
|
|
wiggleplots/wiggleplot_x,wiggleplot_y
|
|
|
|
advplotstyling/advancedlineandfillstyling
|
|
|
|
boxplot
|
|
|
|
contourplot
|
|
|
|
violinplot/violinplot_hor,violinplot_vert
|
|
|
|
errorbarstyles
|
|
|
|
dateaxes/dateaxes,dateaxes_timeaxis
|
|
|
|
distributionplot/test_distributionplot
|
|
|
|
evalcurve
|
2022-08-29 04:48:14 +08:00
|
|
|
filledgraphs/filledgraphs,filledgraphs_y
|
2022-08-27 04:32:48 +08:00
|
|
|
functionplot/functionplot,functionplot_fy
|
2022-08-27 04:41:10 +08:00
|
|
|
styledboxplot/test_styledboxplot
|
2022-08-29 04:48:14 +08:00
|
|
|
multiplot/multiplot,multiplot_controlwindow
|
|
|
|
#symbols_and_styles
|
|
|
|
symbols_and_errors
|
|
|
|
stepplots
|
|
|
|
stackedbars/stackedbars,stackedbars_hor
|
|
|
|
#geo_arrows
|
|
|
|
#geo_simple
|
|
|
|
geometric
|
|
|
|
imageplot
|
|
|
|
imageplot_modifier
|
|
|
|
imageplot_nodatastore
|
|
|
|
imageplot_userpal/imageplot_userpal_program
|
|
|
|
impulsesplot
|
|
|
|
parametriccurve/parametriccurve1,parametriccurve2
|
|
|
|
paramscatterplot
|
|
|
|
#paramscatterplot_image
|
|
|
|
parsedfunctionplot
|
|
|
|
rgbimageplot
|
|
|
|
rgbimageplot_qt
|
|
|
|
mandelbrot
|
|
|
|
#speed
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# custom target that generates the images for the JKQTMathText documentation
|
|
|
|
set(JKQTPlotter_GenerateDocImage_DefaultOptions --screenshotdir="${CMAKE_CURRENT_LIST_DIR}/../doc/images/" --screenshotplot --disablehighdpi)
|
|
|
|
set(JKQTPlotter_GenerateDocImages_From
|
2022-08-30 03:46:38 +08:00
|
|
|
stackedbars/JKQTPbarVerticalGraphStacked,JKQTPbarHorizontalGraphStacked/--smallscreenshotplot
|
|
|
|
scatter/JKQTPXYScatterGraph,JKQTPXYScatterErrorGraph/--smallscreenshotplot
|
|
|
|
simpletest/JKQTPXYLineGraph/--smallscreenshotplot
|
|
|
|
barchart/JKQTPBarVerticalGraph,JKQTPBarHorizontalGraph/--smallscreenshotplot
|
2022-08-29 04:48:14 +08:00
|
|
|
wiggleplots/JKQTPFilledCurveXGraph_wiggle,JKQTPFilledCurveYGraph_wiggle
|
2022-08-30 03:46:38 +08:00
|
|
|
contourplot/JKQTPColumnContourPlot/--smallscreenshotplot
|
|
|
|
filledgraphs/JKQTPFilledCurveXGraph,JKQTPFilledCurveYGraph/--smallscreenshotplot
|
|
|
|
evalcurve/JKQTPXYFunctionLineGraph/--smallscreenshotplot
|
2022-08-26 18:31:27 +08:00
|
|
|
)
|
|
|
|
|
2022-08-29 04:48:14 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-08-27 04:32:48 +08:00
|
|
|
foreach(ex ${JKQTPlotter_GenerateDocScreenshots_From})
|
|
|
|
string(REGEX MATCH "(.+)/(.+)" dummy ${ex})
|
2022-08-30 03:46:38 +08:00
|
|
|
set(extra_command "")
|
2022-08-27 04:32:48 +08:00
|
|
|
if(CMAKE_MATCH_1 STREQUAL "" OR CMAKE_MATCH_2 STREQUAL "")
|
|
|
|
set(example ${ex})
|
|
|
|
set(basename ${ex})
|
|
|
|
else()
|
|
|
|
set(example ${CMAKE_MATCH_1})
|
|
|
|
set(basename ${CMAKE_MATCH_2})
|
2022-08-30 03:46:38 +08:00
|
|
|
if(NOT (CMAKE_MATCH_3 STREQUAL ""))
|
|
|
|
set(example ${CMAKE_MATCH_1})
|
|
|
|
set(basename ${CMAKE_MATCH_2})
|
|
|
|
set(extra_command ${CMAKE_MATCH_3})
|
|
|
|
endif()
|
2022-08-27 04:32:48 +08:00
|
|
|
endif()
|
|
|
|
|
2022-08-26 18:31:27 +08:00
|
|
|
set(loc_target_name JKQTPlotter_GenerateDocScreenshots_${example})
|
|
|
|
set(dep_name jkqtptest_${example})
|
2022-08-27 04:32:48 +08:00
|
|
|
string(TOUPPER ${example} example_upper)
|
2022-08-26 18:31:27 +08:00
|
|
|
add_custom_target(${loc_target_name}
|
2022-08-27 04:32:48 +08:00
|
|
|
COMMENT "Building JKQTPlotter Documentation Screenshot: ${example_upper}"
|
2022-08-30 03:46:38 +08:00
|
|
|
COMMAND $<TARGET_FILE:${dep_name}> ${JKQTPlotter_GenerateDocScreenshots_DefaultOptions} --screenshotbasename=${basename} ${extra_command}
|
2022-08-26 18:31:27 +08:00
|
|
|
WORKING_DIRECTORY ${JKQtPlotter_QT_BINDIR}
|
|
|
|
DEPENDS ${dep_name}
|
|
|
|
)
|
|
|
|
|
|
|
|
add_dependencies(JKQTPlotter_GenerateDocScreenshots ${loc_target_name})
|
|
|
|
|
|
|
|
unset(loc_target_name)
|
|
|
|
unset(dep_name)
|
2022-08-27 04:32:48 +08:00
|
|
|
unset(example)
|
|
|
|
unset(example_upper)
|
|
|
|
unset(basename)
|
2022-08-26 18:31:27 +08:00
|
|
|
endforeach()
|
|
|
|
|
2022-08-29 04:48:14 +08:00
|
|
|
|
|
|
|
foreach(ex ${JKQTPlotter_GenerateDocImages_From})
|
|
|
|
string(REGEX MATCH "(.+)/(.+)" dummy ${ex})
|
2022-08-30 03:46:38 +08:00
|
|
|
set(extra_command "")
|
2022-08-29 04:48:14 +08:00
|
|
|
if(CMAKE_MATCH_1 STREQUAL "" OR CMAKE_MATCH_2 STREQUAL "")
|
|
|
|
set(example ${ex})
|
|
|
|
set(basename ${ex})
|
|
|
|
else()
|
|
|
|
set(example ${CMAKE_MATCH_1})
|
|
|
|
set(basename ${CMAKE_MATCH_2})
|
2022-08-30 03:46:38 +08:00
|
|
|
string(REGEX MATCH "(.+)/(.*)/(.+)" dummy ${ex})
|
|
|
|
if(NOT (CMAKE_MATCH_3 STREQUAL ""))
|
|
|
|
set(example ${CMAKE_MATCH_1})
|
|
|
|
set(basename ${CMAKE_MATCH_2})
|
|
|
|
set(extra_command ${CMAKE_MATCH_3})
|
|
|
|
endif()
|
|
|
|
|
2022-08-29 04:48:14 +08:00
|
|
|
endif()
|
|
|
|
|
|
|
|
set(loc_target_name JKQTPlotter_GenerateDocImages_${example})
|
|
|
|
set(dep_name jkqtptest_${example})
|
|
|
|
string(TOUPPER ${example} example_upper)
|
|
|
|
add_custom_target(${loc_target_name}
|
|
|
|
COMMENT "Building JKQTPlotter Documentation Image: ${example_upper}"
|
2022-08-30 03:46:38 +08:00
|
|
|
COMMAND $<TARGET_FILE:${dep_name}> ${JKQTPlotter_GenerateDocImage_DefaultOptions} --screenshotbasename=${basename} ${extra_command}
|
2022-08-29 04:48:14 +08:00
|
|
|
WORKING_DIRECTORY ${JKQtPlotter_QT_BINDIR}
|
|
|
|
DEPENDS ${dep_name}
|
|
|
|
)
|
|
|
|
|
|
|
|
add_dependencies(JKQTPlotter_GenerateDocImages ${loc_target_name})
|
|
|
|
|
|
|
|
unset(loc_target_name)
|
|
|
|
unset(dep_name)
|
|
|
|
unset(example)
|
|
|
|
unset(example_upper)
|
|
|
|
unset(basename)
|
|
|
|
endforeach()
|
|
|
|
|
|
|
|
|
2022-08-26 18:31:27 +08:00
|
|
|
endif()
|