diff --git a/doc/Doxyfile b/doc/Doxyfile index 446f5f17c2720520f1a218a983432416a7b234dd..da6413d3ee50271ca0fee1fe27dfa3328c3b3a41 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 0000000000000000000000000000000000000000..48ed5a4abe0bb4f3b654e12ac344493be34dab8e --- /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}