Reputation: 38
I'm using doxygen to document my Qt project. The external links to Qt with tag files are working good. But one link goes wrong.
My settings from doxygen include the "Public Member Functions inherited from " e.g. "Public Member Functions inherited from QObject" It is a dynamic title, that opens and show all public member functions. All links OK, but the link in the dynamic title is wrong.
Does anybody know how to fix this?
melogo.h
#ifndef MELOGO_H
#define MELOGO_H
// Qt Base
#include <QObject>
/*!
* \brief The MELogo class
* \note MELogo class needs a QGuiApplication instance before using any member functions.
*/
class MELogo : public QObject
{
Q_OBJECT
public:
explicit MELogo(QObject *parent = nullptr);
};
#endif // MELOGO_H
any my doxyfile
# Doxyfile 1.8.14
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = Example
PROJECT_NUMBER =
PROJECT_BRIEF =
PROJECT_LOGO =
OUTPUT_DIRECTORY = doc
CREATE_SUBDIRS = YES
ALLOW_UNICODE_NAMES = NO
OUTPUT_LANGUAGE = English
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
"The $name widget" \
"The $name file" \
is \
provides \
specifies \
contains \
represents \
a \
an \
the
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = YES
STRIP_FROM_PATH =
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = NO
QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 4
ALIASES =
TCL_SUBST =
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = NO
EXTENSION_MAPPING =
MARKDOWN_SUPPORT = YES
TOC_INCLUDE_HEADINGS = 0
AUTOLINK_SUPPORT = YES
BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO
SIP_SUPPORT = NO
IDL_PROPERTY_SUPPORT = YES
DISTRIBUTE_GROUP_DOC = NO
GROUP_NESTED_COMPOUNDS = NO
SUBGROUPING = YES
INLINE_GROUPED_CLASSES = NO
INLINE_SIMPLE_STRUCTS = NO
TYPEDEF_HIDES_STRUCT = NO
LOOKUP_CACHE_SIZE = 0
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_PACKAGE = YES
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = YES
EXTRACT_ANON_NSPACES = NO
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = NO
HIDE_SCOPE_NAMES = NO
HIDE_COMPOUND_REFERENCE= NO
SHOW_INCLUDE_FILES = YES
SHOW_GROUPED_MEMB_INC = NO
FORCE_LOCAL_INCLUDES = NO
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
SORT_MEMBERS_CTORS_1ST = NO
SORT_GROUP_NAMES = NO
SORT_BY_SCOPE_NAME = NO
STRICT_PROTO_MATCHING = NO
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
SHOW_FILES = YES
SHOW_NAMESPACES = YES
FILE_VERSION_FILTER =
LAYOUT_FILE =
CITE_BIB_FILES =
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO
WARN_AS_ERROR = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# Configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = C:\Example
INPUT_ENCODING = UTF-8
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.pyw \
*.f90 \
*.f95 \
*.f03 \
*.f08 \
*.f \
*.for \
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf
RECURSIVE = NO
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXCLUDE_SYMBOLS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
FILTER_SOURCE_PATTERNS =
USE_MDFILE_AS_MAINPAGE =
#---------------------------------------------------------------------------
# Configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION = NO
REFERENCES_LINK_SOURCE = YES
SOURCE_TOOLTIPS = YES
USE_HTAGS = NO
VERBATIM_HEADERS = YES
CLANG_ASSISTED_PARSING = NO
CLANG_OPTIONS =
CLANG_COMPILATION_DATABASE_PATH= 0
#---------------------------------------------------------------------------
# Configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 1
IGNORE_PREFIX = ME
#---------------------------------------------------------------------------
# Configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = html
HTML_FILE_EXTENSION = .html
HTML_HEADER =
HTML_FOOTER =
HTML_STYLESHEET =
HTML_EXTRA_STYLESHEET =
HTML_EXTRA_FILES =
HTML_COLORSTYLE_HUE = 220
HTML_COLORSTYLE_SAT = 100
HTML_COLORSTYLE_GAMMA = 80
HTML_TIMESTAMP = YES
HTML_DYNAMIC_MENUS = YES
HTML_DYNAMIC_SECTIONS = NO
HTML_INDEX_NUM_ENTRIES = 100
GENERATE_DOCSET = NO
DOCSET_FEEDNAME = "Doxygen generated docs"
DOCSET_BUNDLE_ID = org.doxygen.Project
DOCSET_PUBLISHER_ID = org.doxygen.Publisher
DOCSET_PUBLISHER_NAME = Publisher
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
CHM_INDEX_ENCODING =
BINARY_TOC = NO
TOC_EXPAND = NO
GENERATE_QHP = NO
QCH_FILE =
QHP_NAMESPACE = org.doxygen.Project
QHP_VIRTUAL_FOLDER = doc
QHP_CUST_FILTER_NAME =
QHP_CUST_FILTER_ATTRS =
QHP_SECT_FILTER_ATTRS =
QHG_LOCATION =
GENERATE_ECLIPSEHELP = NO
ECLIPSE_DOC_ID = org.doxygen.Project
DISABLE_INDEX = NO
GENERATE_TREEVIEW = YES
ENUM_VALUES_PER_LINE = 4
TREEVIEW_WIDTH = 350
EXT_LINKS_IN_WINDOW = YES
FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES
USE_MATHJAX = NO
MATHJAX_FORMAT = HTML-CSS
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
MATHJAX_EXTENSIONS =
MATHJAX_CODEFILE =
SEARCHENGINE = YES
SERVER_BASED_SEARCH = NO
EXTERNAL_SEARCH = NO
SEARCHENGINE_URL =
SEARCHDATA_FILE = searchdata.xml
EXTERNAL_SEARCH_ID =
EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# Configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4
EXTRA_PACKAGES =
LATEX_HEADER =
LATEX_FOOTER =
LATEX_EXTRA_STYLESHEET =
LATEX_EXTRA_FILES =
PDF_HYPERLINKS = YES
USE_PDFLATEX = YES
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
LATEX_SOURCE_CODE = NO
LATEX_BIB_STYLE = plain
LATEX_TIMESTAMP = NO
#---------------------------------------------------------------------------
# Configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
RTF_SOURCE_CODE = NO
#---------------------------------------------------------------------------
# Configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_SUBDIR =
MAN_LINKS = NO
#---------------------------------------------------------------------------
# Configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_PROGRAMLISTING = YES
#---------------------------------------------------------------------------
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
GENERATE_DOCBOOK = NO
DOCBOOK_OUTPUT = docbook
DOCBOOK_PROGRAMLISTING = NO
#---------------------------------------------------------------------------
# Configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# Configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration options related to external references
#---------------------------------------------------------------------------
TAGFILES = c:/Qt/Docs/Qt-5.10.1/activeqt/activeqt.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qdoc/qdoc.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qt3d/qt3d.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtbluetooth/qtbluetooth.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtconcurrent/qtconcurrent.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtcore/qtcore.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtgraphicaleffects/qtgraphicaleffects.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtgui/qtgui.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtlabscalendar/qtlabscalendar.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtlabsplatform/qtlabsplatform.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtlocation/qtlocation.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtnetwork/qtnetwork.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtnfc/qtnfc.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtpositioning/qtpositioning.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtprintsupport/qtprintsupport.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtqml/qtqml.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtquick/qtquick.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtquickcontrols/qtquickcontrols.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtquickcontrols2/qtquickcontrols2.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtscxml/qtscxml.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtsensors/qtsensors.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtserialbus/qtserialbus.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtspeech/qtspeech.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtsql/qtsql.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtsvg/qtsvg.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qttestlib/qttestlib.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtwebchannel/qtwebchannel.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtwebsockets/qtwebsockets.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtwidgets/qtwidgets.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtxml/qtxml.tags=https://doc.qt.io/archives/qt-5.10/ \
c:/Qt/Docs/Qt-5.10.1/qtxmlpatterns/qtxmlpatterns.tags=https://doc.qt.io/archives/qt-5.10/
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
EXTERNAL_PAGES = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
MSCGEN_PATH =
DIA_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = NO
DOT_NUM_THREADS = 0
DOT_FONTNAME = Helvetica
DOT_FONTSIZE = 10
DOT_FONTPATH =
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
UML_LOOK = NO
UML_LIMIT_NUM_FIELDS = 10
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
CALLER_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
INTERACTIVE_SVG = NO
DOT_PATH =
DOTFILE_DIRS =
MSCFILE_DIRS =
DIAFILE_DIRS =
PLANTUML_JAR_PATH =
PLANTUML_CFG_FILE =
PLANTUML_INCLUDE_PATH =
DOT_GRAPH_MAX_NODES = 50
MAX_DOT_GRAPH_DEPTH = 0
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = YES
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
Upvotes: 1
Views: 768
Reputation: 9067
Problem here is that doxygen generates the following HTML code:
Public Member Functions inherited from <a class="el" href="target="_blank" https://doc.qt.io/archives/qt-5.10/qobject.html">
instead of:
Public Member Functions inherited from <a class="el" href="https://doc.qt.io/archives/qt-5.10/qobject.html">
or:
Public Member Functions inherited from <a class="el" href="https://doc.qt.io/archives/qt-5.10/qobject.html" target="_blank">
This is due to the setting of EXT_LINKS_IN_WINDOW
, setting this tag to NO
generates valid links, but results are in the same window.
Solution: I've just pushed a proposed patch to github (pull request 6394, https://github.com/doxygen/doxygen/pull/6394 : Wrong link generated for inherited members when tag files are used.
EDIT 26 July, 2018: code has been inetgerated in master on github.
Upvotes: 1