📄 config.l
字号:
config_err("Error: tag DOC_ABSPATH: path is not absolute!\n"); exit(1); } // check path to doxysearch QCString &binAbsPath = Config_getString("BIN_ABSPATH"); if (binAbsPath.isEmpty()) { config_err("Error: tag BIN_ABSPATH: no absolute path to doxysearch " "specified.\n"); exit(1); } else if (binAbsPath[0]!='/' && binAbsPath[1]!=':') { config_err("Error: tag BIN_ABSPATH: path is not absolute!\n"); exit(1); } // check perl path bool found=FALSE; QCString &perlPath = Config_getString("PERL_PATH"); if (perlPath.isEmpty()) { QFileInfo fi; fi.setFile("/usr/bin/perl"); if (fi.exists()) { perlPath="/usr/bin/perl"; found=TRUE; } else { fi.setFile("/usr/local/bin/perl"); if (fi.exists()) { perlPath="/usr/local/bin/perl"; found=TRUE; } } } if (!found) { QFileInfo fi(perlPath); if (!fi.exists()) { config_warn("Warning: tag PERL_PATH: perl interpreter not found at default or" "user specified (%s) location\n", perlPath.data()); } } }#undef PUTENV#if defined(_WIN32) && !defined(__GNUC__) && (__BORLANDC__ < 0x0550)#define PUTENV _putenv#else#define PUTENV putenv#endif if (Config_getBool("HAVE_DOT")) PUTENV("DOTFONTPATH=."); }void Config::init(){ ConfigOption *option = m_options->first(); while (option) { option->init(); option = m_options->next(); }}void Config::create(){ if (m_initialized) return; m_initialized = TRUE; ConfigString *cs; ConfigEnum *ce; ConfigList *cl; ConfigInt *ci; ConfigBool *cb; // option definitions //----------------------------------------------------------------------------------------------- addInfo("General","General configuration options"); //----------------------------------------------------------------------------------------------- cs = addString( "PROJECT_NAME", "The PROJECT_NAME tag is a single word (or a sequence of words surrounded \n" "by quotes) that should identify the project. " ); cs = addString( "PROJECT_NUMBER", "The PROJECT_NUMBER tag can be used to enter a project or revision number. \n" "This could be handy for archiving the generated documentation or \n" "if some version control system is used.\n" ); cs = addString( "OUTPUT_DIRECTORY", "The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) \n" "base path where the generated documentation will be put. \n" "If a relative path is entered, it will be relative to the location \n" "where doxygen was started. If left blank the current directory will be used.\n" ); cs->setWidgetType(ConfigString::Dir); ce = addEnum( "OUTPUT_LANGUAGE", "The OUTPUT_LANGUAGE tag is used to specify the language in which all \n" "documentation generated by doxygen is written. Doxygen will use this \n" "information to generate all constant output in the proper language. \n" "The default language is English, other supported languages are: \n" "Brazilian, Chinese, Croatian, Czech, Danish, Dutch, Finnish, French, \n" "German, Hungarian, Italian, Japanese, Korean, Norwegian, Polish, \n" "Portuguese, Romanian, Russian, Slovak, Slovene, Spanish and Swedish.\n", "English" ); ce->addValue("Brazilian"); ce->addValue("Chinese"); ce->addValue("Croatian"); ce->addValue("Czech"); ce->addValue("Danish"); ce->addValue("Dutch"); ce->addValue("English"); ce->addValue("Finnish"); ce->addValue("French"); ce->addValue("German"); ce->addValue("Hungarian"); ce->addValue("Italian"); ce->addValue("Japanese"); ce->addValue("Korean"); ce->addValue("Norwegian"); ce->addValue("Polish"); ce->addValue("Portuguese"); ce->addValue("Romanian"); ce->addValue("Russian"); ce->addValue("Slovak"); ce->addValue("Slovene"); ce->addValue("Spanish"); ce->addValue("Swedish"); ce->addValue("Ukrainian"); cb = addBool( "EXTRACT_ALL", "If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in \n" "documentation are documented, even if no documentation was available. \n" "Private class members and static file members will be hidden unless \n" "the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES \n", FALSE ); cb = addBool( "EXTRACT_PRIVATE", "If the EXTRACT_PRIVATE tag is set to YES all private members of a class \n" "will be included in the documentation. \n", FALSE ); cb = addBool( "EXTRACT_STATIC", "If the EXTRACT_STATIC tag is set to YES all static members of a file \n" "will be included in the documentation. \n", FALSE ); cb = addBool( "HIDE_UNDOC_MEMBERS", "If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all \n" "undocumented members of documented classes, files or namespaces. \n" "If set to NO (the default) these members will be included in the \n" "various overviews, but no documentation section is generated. \n" "This option has no effect if EXTRACT_ALL is enabled. \n", FALSE ); cb = addBool( "HIDE_UNDOC_CLASSES", "If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all \n" "undocumented classes that are normally visible in the class hierarchy. \n" "If set to NO (the default) these class will be included in the various \n" "overviews. This option has no effect if EXTRACT_ALL is enabled. \n", FALSE ); cb = addBool( "BRIEF_MEMBER_DESC", "If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will \n" "include brief member descriptions after the members that are listed in \n" "the file and class documentation (similar to JavaDoc). \n" "Set to NO to disable this. \n", TRUE ); cb = addBool( "REPEAT_BRIEF", "If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend \n" "the brief description of a member or function before the detailed description. \n" "Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the \n" "brief descriptions will be completely suppressed. \n", TRUE ); cb = addBool( "ALWAYS_DETAILED_SEC", "If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then \n" "Doxygen will generate a detailed section even if there is only a brief \n" "description. \n", FALSE ); cb = addBool( "FULL_PATH_NAMES", "If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full \n" "path before files name in the file list and in the header files. If set \n" "to NO the shortest path that makes the file name unique will be used. \n", FALSE ); cl = addList( "STRIP_FROM_PATH", "If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag \n" "can be used to strip a user defined part of the path. Stripping is \n" "only done if one of the specified strings matches the left-hand part of \n" "the path. It is allowed to use relative paths in the argument list.\n" ); cl->addDependency("FULL_PATH_NAMES"); cb = addBool( "INTERNAL_DOCS", "The INTERNAL_DOCS tag determines if documentation \n" "that is typed after a \\internal command is included. If the tag is set \n" "to NO (the default) then the documentation will be excluded. \n" "Set it to YES to include the internal documentation. \n", FALSE ); cb = addBool( "STRIP_CODE_COMMENTS", "Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct \n" "doxygen to hide any special comment blocks from generated source code \n" "fragments. Normal C and C++ comments will always remain visible. \n", TRUE ); cb = addBool( "CASE_SENSE_NAMES", "If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate \n" "file names in lower case letters. If set to YES upper case letters are also \n" "allowed. This is useful if you have classes or files whose names only differ \n" "in case and if your file system supports case sensitive file names. Windows \n" "users are adviced to set this option to NO.\n", TRUE ); cb = addBool( "SHORT_NAMES", "If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter \n" "(but less readable) file names. This can be useful is your file systems \n" "doesn't support long names like on DOS, Mac, or CD-ROM. \n", FALSE ); cb = addBool( "HIDE_SCOPE_NAMES", "If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen \n" "will show members with their full class and namespace scopes in the \n" "documentation. If set to YES the scope will be hidden. \n", FALSE ); cb = addBool( "VERBATIM_HEADERS", "If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen \n" "will generate a verbatim copy of the header file for each class for \n" "which an include is specified. Set to NO to disable this. \n", TRUE ); cb = addBool( "SHOW_INCLUDE_FILES", "If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen \n" "will put list of the files that are included by a file in the documentation \n" "of that file. \n", TRUE ); cb = addBool( "JAVADOC_AUTOBRIEF", "If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen \n" "will interpret the first line (until the first dot) of a JavaDoc-style \n" "comment as the brief description. If set to NO, the JavaDoc \n" "comments will behave just like the Qt-style comments (thus requiring an \n" "explict @brief command for a brief description. \n", FALSE ); cb = addBool( "INHERIT_DOCS", "If the INHERIT_DOCS tag is set to YES (the default) then an undocumented \n" "member inherits the documentation from any documented member that it \n" "reimplements. \n", TRUE ); cb = addBool( "INLINE_INFO", "If the INLINE_INFO tag is set to YES (the default) then a tag [inline] \n" "is inserted in the documentation for inline members. \n", TRUE ); cb = addBool( "SORT_MEMBER_DOCS", "If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen \n" "will sort the (detailed) documentation of file and class members \n" "alphabetically by member name. If set to NO the members will appear in \n" "declaration order. \n", TRUE ); cb = addBool( "DISTRIBUTE_GROUP_DOC", "If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC \n" "tag is set to YES, then doxygen will reuse the documentation of the first \n" "member in the group (if any) for the other members of the group. By default \n" "all members of a group must be documented explicitly.\n", FALSE ); ci = addInt( "TAB_SIZE", "The TAB_SIZE tag can be used to set the number of spaces in a tab. \n" "Doxygen uses this value to replace tabs by spaces in code fragments. \n", 1,16,8 ); cb = addBool( "GENERATE_TODOLIST", "The GENERATE_TODOLIST tag can be used to enable (YES) or \n" "disable (NO) the todo list. This list is created by putting \\todo \n" "commands in the documentation.\n", TRUE ); cb = addBool( "GENERATE_TESTLIST", "The GENERATE_TESTLIST tag can be used to enable (YES) or \n" "disable (NO) the test list. This list is created by putting \\test \n" "commands in the documentation.\n", TRUE ); cb = addBool( "GENERATE_BUGLIST", "The GENERATE_BUGLIST tag can be used to enable (YES) or \n" "disable (NO) the bug list. This list is created by putting \\bug \n" "commands in the documentation.\n", TRUE ); cl = addList( "ALIASES", "This tag can be used to specify a number of aliases that acts \n" "as commands in the documentation. An alias has the form \"name=value\". \n" "For example adding \"sideeffect=\\par Side Effects:\\n\" will allow you to \n" "put the command \\sideeffect (or @sideeffect) in the documentation, which \n" "will result in a user defined paragraph with heading \"Side Effects:\". \n" "You can put \\n's in the value part of an alias to insert newlines. \n" ); cl = addList( "ENABLED_SECTIONS", "The ENABLED_SECTIONS tag can be used to enable conditional \n" "documentation sections, marked by \\if sectionname ... \\endif. \n" ); ci = addInt( "MAX_INITIALIZER_LINES", "The MAX_INITIALIZER_LINES tag determines the maximum number of lines \n" "the initial value of a variable or define consist of for it to appear in \n" "the documentation. If the initializer consists of more lines than specified \n" "here it will be hidden. Use a value of 0 to hide initializers completely. \n" "The appearance of the initializer of individual variables and defines in the \n" "documentation can be controlled using \\showinitializer or \\hideinitializer \n" "command in the documentation regardless of this setting. \n", 0,10000,30 ); cb = addBool( "OPTIMIZE_OUTPUT_FOR_C", "Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources \n" "only. Doxygen will then generate output that is more tailored for C. \n" "For instance some of the names that are used will be different. The list \n" "of all members will be omitted, etc. \n", FALSE );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -