doxygen/addon/doxywizard/wizard.cpp
Step2::Step2(Wizard *wizard,const QHash<QString,Input*> &modelData)
: m_wizard(wizard), m_modelData(modelData)
{
QRadioButton *r;
QVBoxLayout *layout = new QVBoxLayout(this);
//---------------------------------------------------
m_extractModeGroup = new QButtonGroup(this);
m_extractMode = new QGroupBox(this);
m_extractMode->setTitle(tr("Select the desired extraction mode:"));
QGridLayout *gbox = new QGridLayout( m_extractMode );
r = new QRadioButton(tr("Documented entities only"));
r->setChecked(true);
m_extractModeGroup->addButton(r, 0);
gbox->addWidget(r,1,0);
// 1 -> EXTRACT_ALL = NO
r = new QRadioButton(tr("All Entities"));
m_extractModeGroup->addButton(r, 1);
gbox->addWidget(r,2,0);
// 2 -> EXTRACT_ALL = YES
m_crossRef = new QCheckBox(m_extractMode);
m_crossRef->setText(tr("Include cross-referenced source code in the output"));
// m_crossRef -> SOURCE_BROWSER = YES/NO
gbox->addWidget(m_crossRef,3,0);
layout->addWidget(m_extractMode);
//---------------------------------------------------
QFrame *f = new QFrame( this );
f->setFrameStyle( QFrame::HLine | QFrame::Sunken );
layout->addWidget(f);
m_optimizeLangGroup = new QButtonGroup(this);
m_optimizeLang = new QGroupBox(this);
m_optimizeLang->setTitle(tr("Select programming language to optimize the results for"));
gbox = new QGridLayout( m_optimizeLang );
r = new QRadioButton(m_optimizeLang);
r->setText(tr("Optimize for C++ output"));
r->setChecked(true);
m_optimizeLangGroup->addButton(r, 0);
// 0 -> OPTIMIZE_OUTPUT_FOR_C = NO
// OPTIMIZE_OUTPUT_JAVA = NO
// OPTIMIZE_FOR_FORTRAN = NO
// OPTIMIZE_OUTPUT_VHDL = NO
// CPP_CLI_SUPPORT = NO
// HIDE_SCOPE_NAMES = NO
// OPTIMIZE_OUTPUT_SLICE = NO
gbox->addWidget(r,0,0);
r = new QRadioButton(tr("Optimize for C++/CLI output"));
gbox->addWidget(r,1,0);
m_optimizeLangGroup->addButton(r, 1);
// 1 -> OPTIMIZE_OUTPUT_FOR_C = NO
// OPTIMIZE_OUTPUT_JAVA = NO
// OPTIMIZE_FOR_FORTRAN = NO
// OPTIMIZE_OUTPUT_VHDL = NO
// CPP_CLI_SUPPORT = YES
// HIDE_SCOPE_NAMES = NO
// OPTIMIZE_OUTPUT_SLICE = NO
r = new QRadioButton(tr("Optimize for Java or C# output"));
m_optimizeLangGroup->addButton(r, 2);
// 2 -> OPTIMIZE_OUTPUT_FOR_C = NO
// OPTIMIZE_OUTPUT_JAVA = YES
// OPTIMIZE_FOR_FORTRAN = NO
// OPTIMIZE_OUTPUT_VHDL = NO
// CPP_CLI_SUPPORT = NO
// HIDE_SCOPE_NAMES = NO
// OPTIMIZE_OUTPUT_SLICE = NO
gbox->addWidget(r,2,0);
r = new QRadioButton(tr("Optimize for C or PHP output"));
m_optimizeLangGroup->addButton(r, 3);
// 3 -> OPTIMIZE_OUTPUT_FOR_C = YES
// OPTIMIZE_OUTPUT_JAVA = NO
// OPTIMIZE_FOR_FORTRAN = NO
// OPTIMIZE_OUTPUT_VHDL = NO
// CPP_CLI_SUPPORT = NO
// HIDE_SCOPE_NAMES = YES
// OPTIMIZE_OUTPUT_SLICE = NO
gbox->addWidget(r,3,0);
r = new QRadioButton(tr("Optimize for Fortran output"));
m_optimizeLangGroup->addButton(r, 4);
// 4 -> OPTIMIZE_OUTPUT_FOR_C = NO
// OPTIMIZE_OUTPUT_JAVA = NO
// OPTIMIZE_FOR_FORTRAN = YES
// OPTIMIZE_OUTPUT_VHDL = NO
// CPP_CLI_SUPPORT = NO
// HIDE_SCOPE_NAMES = NO
// OPTIMIZE_OUTPUT_SLICE = NO
gbox->addWidget(r,4,0);
r = new QRadioButton(tr("Optimize for VHDL output"));
m_optimizeLangGroup->addButton(r, 5);
// 5 -> OPTIMIZE_OUTPUT_FOR_C = NO
// OPTIMIZE_OUTPUT_JAVA = NO
// OPTIMIZE_FOR_FORTRAN = NO
// OPTIMIZE_OUTPUT_VHDL = YES
// CPP_CLI_SUPPORT = NO
// HIDE_SCOPE_NAMES = NO
// OPTIMIZE_OUTPUT_SLICE = NO
gbox->addWidget(r,5,0);
r = new QRadioButton(tr("Optimize for SLICE output"));
m_optimizeLangGroup->addButton(r, 6);
// 5 -> OPTIMIZE_OUTPUT_FOR_C = NO
// OPTIMIZE_OUTPUT_JAVA = NO
// OPTIMIZE_FOR_FORTRAN = NO
// OPTIMIZE_OUTPUT_VHDL = NO
// CPP_CLI_SUPPORT = NO
// HIDE_SCOPE_NAMES = NO
// OPTIMIZE_OUTPUT_SLICE = YES
gbox->addWidget(r,6,0);
SOURCE_BROWSER
如果SOURCE_BROWSER标签设置为YES,那么将生成一个源文件列表。文档中的实体将与这些源交叉引用。
注意:要删除生成的输出中的所有源代码,请确保VERBATIM_HEADERS也设置为NO
。
默认值为:NO
。
cross-referenced 交叉引用 我猜大概意思就是 点实体,比如说下边这个函数,可以跳转到源代码的位置(为了避免暴露源码,不勾选这个选项)
什么叫做“交叉引用”呢?说通俗一点,就是在本篇文章里面的超链接。也就是,这个超链接不能打开外面的文章、程序等,只能在本篇Word内部进行超链接。
Exiting...
error: Could not open file ..._a0474c8770e409a3506f45e0ff1c29e41_icgraph.dot for writing
Generating docs for nested compound ...UpdateResultCallback...
error: Could not open file ..._servicea8abdf2379f0cac27efb9a61cc708d06.html for writing
Exiting...
*** Doxygen has finished
因error退出
正常退出应该是这样的:
Patching output file 266/268
Patching output file 267/268
Patching output file 268/268
lookup cache used 4424/65536 hits=26668 misses=4625
finished...
*** Doxygen has finished
不过呢,因error退出,也是会生成html的,只是html生成了一部分,不完全,缺少call graph caller graph,还缺少一些文件