From 2c04ad3c356fce30aaa0c55c907444971e6f400f Mon Sep 17 00:00:00 2001 From: Gus Grubba Date: Sun, 2 Feb 2020 16:38:25 -0500 Subject: [PATCH] Exclude QObject and Item. Everything on the c++ side derives from QObject and most things on the QML side derives from Item. --- doc/Doxyfile | 2 +- doc/dot | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100755 doc/dot diff --git a/doc/Doxyfile b/doc/Doxyfile index 446f5f17c..da6413d3e 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -355,7 +355,7 @@ GRAPHICAL_HIERARCHY = YES DIRECTORY_GRAPH = YES DOT_IMAGE_FORMAT = svg INTERACTIVE_SVG = YES -DOT_PATH = /usr/local/bin/dot +DOT_PATH = . DOTFILE_DIRS = MSCFILE_DIRS = DIAFILE_DIRS = diff --git a/doc/dot b/doc/dot new file mode 100755 index 000000000..48ed5a4ab --- /dev/null +++ b/doc/dot @@ -0,0 +1,37 @@ +#! /bin/bash + +# This hack is a wrapper to GraphViz dot that removes any nodes that +# are contained in the following list. + +LABELS_TO_FILTER="QObject Item" + +ARGS=$@ + +for ARG in ${ARGS} +do + if [ -e ${ARG} ] + then + FILENAME=$(basename "${ARG}") + EXT="${FILENAME##*.}" + + if [ ${EXT} == "dot" ] + then + DOT_FILE=${ARG} + + for LABEL_TO_FILTER in ${LABELS_TO_FILTER} + do + NODE_NAME=$(grep "label=\"${LABEL_TO_FILTER}\"" ${DOT_FILE} | awk '{print $1}') + + if [[ ! -z "${NODE_NAME}" ]] + then + echo "${NODE_NAME} is labelled ${LABEL_TO_FILTER}, filtering..." + sed -i -e "/${NODE_NAME}/d" ${DOT_FILE} + fi + done + + break + fi + fi +done + +/usr/local/bin/dot ${ARGS} -- 2.22.0