summaryrefslogtreecommitdiffstats
path: root/src/tools/qdoc
Commit message (Collapse)AuthorAgeFilesLines
...
| * Update the copy of the Qml parserSimon Hausmann2014-11-055-1078/+1105
| | | | | | | | | | | | | | | | | | | | The files here are a copy of the parser from the qtdeclarative repository. This patch combines commit cfff375afcfe63d25b3c1904ff58a90bcd1edb43 and f876562de8eb978cea39fe72e76c49ae51ff2f97 from the qtdeclarative repository to fix the license and allow for read-only object property syntax. Change-Id: Idb58948cede2cd47858e3831785009f8b7ea2169 Reviewed-by: Martin Smith <martin.smith@digia.com>
| * New Qt logoAlessandro Portale2014-11-051-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch replaces the old Qt logo with the new, flatter one. The PNGs were optimized via: optipng -o7 -strip "all" Task-number: QTBUG-41685 Change-Id: I51983a45144373bf7aee31a32990ecbb2582f488 Reviewed-by: Robert Loehning <robert.loehning@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * qdoc: Delayed the examples manifest file creationVenu2014-11-041-3/+1
| | | | | | | | | | | | | | | | | | This avoids the creation of demos-manifest.xml if there are no demos in the repo. Change-Id: I4d3bbe4540f4b1532c0d51f62b8d1494864a7b1c Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Include source file and line number of linksMartin Smith2014-11-124-25/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each entry in the link-to-link tables and in the broken-links table now includes the source file path of the file where the link or broken link appears and the line number in that file. The line number often refers to where the comment that contains the link begins, so sometimes the link or broken link appears further down in that comment. Change-Id: I692bfc173c8711bf26c9c59ad9771930c27e24a8 Task-number: QTBUG-41850 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Remove CR from command parametersMartin Smith2014-11-121-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although it is not recommended, it is allowed to have a carriage return in a qdoc command parameter that is enclosed in curly braces. qdoc is supposed to use QString::simplified() to sanitize the string so that all whitespace is replaced by a single ' '. But in at least one case, this didn't work, and the carriage return was left in the string, which caused qdoc to report that it couldn't find links that have the carriage return in them. The problem has been fixed by replacing the carriage return with a ' ' right when and where it is detected. Change-Id: I31c31f19a1e4150b2e27613ecbac260c46a7109b Task-number: QTBUG-42449 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Generate the links-to-broken-links pageMartin Smith2014-11-125-23/+87
| | | | | | | | | | | | | | | | | | | | | | The cross-module link report now contains an entry for the links to broken links subpage. It is the last entry in the links-to-links table on the QA page. Change-Id: I9e0b3ba5f2efe76055902467348db878dbed9991 Task-number: QTBUG-41850 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: no longer autolinks symbols that begin with "__"Martin Smith2014-11-121-4/+6
| | | | | | | | | | | | | | | | | | | | | | qdoc no longer tries to autolink symbols that begin with two underscores. There may be other cases where qdoc should not try to autolink. They should be handled in this same place. Change-Id: I5a39ea2bb0edec2289b8a4b1a9af1f33534093a1 Task-number: QTBUG-42441 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Generate \keyword anchors at the top of the pageMartin Smith2014-11-126-4/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, qdoc processes \keyword and \target the same way. The negative effect of this is that when either command appears at the top of a qdoc comment, the anchor it generates in the html file is just above the details section on the html page. This is usually wrong, especially for \keyword commands, where the anchor generated should always be at the top of the page/text where the \keyword appears. This update implements that. \target anchors are meant to be used when the anchor should appear somewhere in the middle of the page/text, exactly where the \target command appears. Change-Id: Ibbbf1087562a977ff74ccd98febfe9310ecba8f0 Task-number: QTBUG-42290 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Generate cross-module links-to-links pagesMartin Smith2014-11-118-65/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cross-module link report is modified so that each module listed in the table is a link to a subpage on which all the links from the current module to that module are listed. To check that these links go to the correct place, click on one to be taken to the actual link. The actual link is marked with red asterisks. Click on that link to check that the link goes to the correct page. Repeat this process for all the links in the table. Change-Id: Ifddf7108ed7ef090c4063909fdbd10dac1f2566b Task-number: QTBUG-41850 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Fixed a link generation regressionMartin Smith2014-11-111-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This update fixes a bug introduced in the original update for this task. The bug caused some links to be generated incorrectly. If the name of the file containing the target began with the module name, then a test that asks if the link already begins with the module name fails, and the link is generated incorrectly. The test now checks for the module name followed by a slash, which it should have done in the first place. Change-Id: Iebac228ac969cef875678b15a248a2a1198ace05 Task-number: QTBUG-41705 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-10-201-4/+4
|\| | | | | | | Change-Id: If7e51514ed6832750e3ad967e4d322ccf920d2bb
| * qdoc: Fixed recursion of \sincelist command handlingTopi Reinio2014-10-151-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | QDoc uses a recursive method of resolving all the classes, QML types, properties, functions etc. added since a specified Qt version. The code entered the next level of recursion only if its parent had set a \since version, which was not always the case. Task-number: QTBUG-41862 Change-Id: I3803ed9ffa472165754358f3906955430a893de1 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Generate QA pagesMartin Smith2014-10-1713-13/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qdoc has a new command line option, -write-qa-pages. Using this flag on the command line will tell qdoc to generate a QA html page in each module's output directory. The QA page contains information that is useful for Quality Assurance checking of the module's docs. The QA file name begins with "aaa" so it will always be listed at the top of the output directory. The file name for the QA file for QtCore, for example, is aaa-qtcore-qa-page.html. Currently, the QA page only contains a report listing the intermodule link count for each module that is the target of links from the documented module. The link report can be used to optimize the search order qdoc uses when resolving inter-module links. By default, the search order is the same as the ordering of the modules in the depends list in the .qdocconf file. Using the report, the user can reorder that list according to the number of links found in each module. i.e. in descending order of link count. The modules are listed in descending order of link count. Additionally, an actual depends variable is printed. It can be cut and pasted into the module's qdocconf file. Change-Id: I442596aeb54dcdd5db4a0821096a5273c15627e6 Task-number: QTBUG-41850 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: qdoc was too slowMartin Smith2014-10-1718-384/+564
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The hard-coded search order is now removed. The search order is now constructed from the depends variable in the qdocconf file. The basic idea is that qdoc is run once. It gets a list of all the qdocconf files for the modules in Qt5. First, qdoc runs in -prepare mode for each qdocconf file in the list. It generates the index file for each module, but these index files are never used. At the end of the -prepare phase for each module, qdoc keeps the tree structure for the module in a collection of trees. Second, qdoc runs in -generate mode for each qdocconf file in the list. But now it uses the existing tree for that module, so it doesn't have to read the sources files again, and it doesn't have to read any index files. Now it generates the docs for each module. The runtime for qdoc has been reduced by 90% when running qdoc for all of Qt5 on a not so new iMac. Before this update, qdoc took about 10 minutes to generate docs for Qt5. Now it takes a little over 1 minute. The new way to run qdoc is described in the Qt bug report referenced here. Note that running qdoc this new (old) way also generates fewer qdoc errors than when running qdoc the old way. This indicates that the index files qdoc uses when running the old way are incomplete. Note also that the old way of running qdoc is not affected by this update. The old way is still required for running qdoc in the current qmake/make system. That process must be changed to be able to use the faster qdoc. The details are provided in the Qt bug report. Change-Id: Ibec41d6fbaa9fc8cd070a05d04357bd02c4478f0 Task-number: QTBUG-41705 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Removing a few unneeded "? true : false"Alessandro Portale2014-10-092-2/+2
| | | | | | | Change-Id: Ib13f0ddd65fe78f5559f343f2fc30756b1d3ef76 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Don't use QStringLiteral in comparisonsMarc Mutz2014-10-091-1/+1
| | | | | | | | | | | | | | For QLatin1String, operator== is overloaded, so comparing to a latin-1 (C) string literal is efficient, since strlen() is comparatively fast. OTOH, QStringLiteral, when not using RVO, litters the code with QString dtor calls, which are not inline. Worse, absent lambdas, it even allocates memory. So, just compare using QLatin1String instead. Change-Id: I7af3bf3a67c55dae33ffaf9922d004fa168a3f9c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* qdoc: Fix generation of qhp sections for unsorted pagesTopi Reinio2014-10-081-1/+7
| | | | | | | | | | | | | | | | | | | | | | If you had the following lines in .qdocconf: qhp.QtFoo.subprojects.examples.title = Examples qhp.QtFoo.subprojects.examples.indexTitle = Qt Foo Examples qhp.QtFoo.subprojects.examples.selectors = fake:example The expected outcome is to see an unsorted list of examples. This didn't work however, because QDoc assumed to find a chain of \nextpage links for the indexTitle, and these are rarely used in Qt documentation nowadays. This commit ensures that all pages matching the defined selectors will be listed under the section title, even when the sortPages flag is not set. Task-number: QTBUG-41737 Change-Id: I1e7e2a2953de949c9b52763165c406a64d1d46f7 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* qdoc: Restore navigation bar titles for QML, QML basic typesTopi Reinio2014-09-301-10/+4
| | | | | | | | | Re-add the name of a QML type/QML basic type to the navigation bar. Change-Id: Ia0ced775099f1ed4071ae9a922d808b9114c10ea Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Doc: Use title case in section1 titlesNico Vertriest2014-09-304-7/+7
| | | | | | | | Using Python script title-cased.py Task-number: QTBUG-41250 Change-Id: I00d3d7a0b30db7304a7904efd6d63abd9a7b493b Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Update license headers and add new license filesMatti Paaso2014-09-2482-1555/+899
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Merge remote-tracking branch 'origin/5.3' into 5.4Frederik Gladhorn2014-09-231-0/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The isAlwaysAskOption was removed in 38621713150b663355ebeb799a5a50d8e39a3c38 so manually removed code in src/plugins/bearer/connman/qconnmanengine.cpp Conflicts: src/corelib/global/qglobal.h src/corelib/tools/qcollator_macx.cpp src/corelib/tools/qstring.cpp src/gui/kernel/qwindow.cpp src/gui/kernel/qwindow_p.h src/gui/text/qtextengine.cpp src/platformsupport/fontdatabases/fontconfig/qfontenginemultifontconfig_p.h src/plugins/platforms/android/qandroidinputcontext.cpp src/plugins/platforms/xcb/qglxintegration.cpp src/plugins/platforms/xcb/qglxintegration.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/testlib/qtestcase.cpp src/testlib/qtestlog.cpp src/widgets/dialogs/qfiledialog.cpp src/widgets/kernel/qwindowcontainer.cpp tests/auto/corelib/tools/qcollator/tst_qcollator.cpp tests/auto/gui/text/qtextscriptengine/tst_qtextscriptengine.cpp tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp Change-Id: Ic5d4187f682257a17509f6cd28d2836c6cfe2fc8
| * Add missing private headers warningSamuel Gaist2014-09-041-0/+11
| | | | | | | | | | Change-Id: I7a4dd22ea3bcebf4c3ec3ad731628fd8f3c247e0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | qdoc: Resolve .qhp table of contents sections correctlyTopi Reinio2014-09-102-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the recent changes in QDoc, we can no longer assume that pages listed in the TOC are of type DocNode. For example, all Qt modules want to list C++/QML type index pages in the TOC, and those are now of type CollectionNode. This change fixes the issue by using a more generic search function when generating the .qhp TOC, one that doesn't restrict the results to any specific node type. As an exception, the main index page for a project must still be a DocNode, i.e. a page declared using the \page command. However, we do want to restrict the search to the pages in this documentation module only - for that purpose, a function for setting a local search order is introduced. Task-number: QTBUG-40241 Change-Id: Ibaa5af9c5de6436f34b7ae67e56733817fc090b9 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Highlight selected section / entry in the documentationTopi Reinio2014-09-051-36/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds id tags with the anchor reference as the value to html entities for documentation section titles and function signatures, properties etc. for both C++ and QML documentation pages. Together with new CSS rules, we can dynamically highlight the title that the user clicked on. This helps to locate the item of interest on a crowded page or when the page cannot be scrolled down enough to place the selected item on top. Change-Id: I7d1db2ed4e12779e1a9e571996ee65c3befa4e7a Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* | QDoc: fix Node::setPageType() when type name is "faq"Maks Naumov2014-08-311-2/+2
| | | | | | | | | | | | | | "HowToPage" has been verified above. Change-Id: If8ca9b375029d5b018936b04a2a313cf5b8788b6 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Use qdoc error logging for warnings related to index filesTopi Reinio2014-08-291-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | Make the warnings that are displayed during the reading of index files and dependencies more consistent by using QDoc's error logging functions. This means that warnings are not generated in prepare phase, but they are generated for projects that call qdoc directly, running prepare and generate phases in one go. Change-Id: I645c3feb1cbf471fd3ca6034f94e7dc1ea35b875 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Enable listing of example files with .html extensionTopi Reinio2014-08-262-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | If a (non-external) link string ends in '.html', qdoc assumed it is a direct link to a generated html page. However, it could also refer to an example file with .html extension. This commit fixes a corner case where links to an example file page were broken for such files. Task-number: QTBUG-40831 Change-Id: I31acc141970b6768f0a93964723be82611d37a3d Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | qdoc: Restore navigation bar title for module pages and groupsTopi Reinio2014-08-261-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Adapt the code that generates the navigation bar to the recent changes in node hierarchy - Module pages, QML module pages and groups are no longer DocNodes. This change will ensure that if a page has a title, it will be visible in the navigation bar regardless of the the page (node) type. Change-Id: I697a12d5904d88f91771764ab7ed607b79e4eab1 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Write all generated files to .qhpTopi Reinio2014-08-264-41/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When writing the Qt Help Project XML file, QDoc traverses the documentation nodes recursively, adding html filenames for each node to the XML. The logic that QDoc uses for this process is not perfect, and needs to be kept up to date whenever the internal structure of the node tree changes. This often leads to problems where some pages are generated but not added to the .qhp, resulting in missing pages in the offline documentation. This change fixes this problem by having the generator keep track of the created filenames, and passing that to the help project writer. Task-number: QTBUG-40572 Change-Id: Ife60a30724183a2b6dcd2397ea79bfbdc2addd04 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | qdoc: Fix output of \br commandTopi Reinio2014-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the \br was promoted from a macro to a QDoc command, its output has been enclosed in extra paragraph end/start tags, adding to the visible vertical space. This change fixes the issue by not closing the paragraph when QDoc encounters a \br command. Also removes the now-obsolete \br and \hr macros, as they are both proper commands. \BR and \HR substitute macros are kept. Task-number: QTBUG-37361 Change-Id: Iabbefb6e79268419792ccba42386f6342ccd175d Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Fix a few cases for '[ ... ]' linkingMartin Smith2014-08-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This update fixes a few cases that didn't work correctly. The problem was caused by calling findNodeForTarget() with a pointer to a relative node, but the relative node pointer should always be 0, when the domain tree to be searched is not the same as the tree containing the relative node. This fix sets the relative node pointer to 0 in that case. Change-Id: I2fe4a7a4a3b6392199666c7d49b473a56697e7b5 Task-number: QTBUG-39221 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Report error in square bracket parameterMartin Smith2014-08-223-2/+21
| | | | | | | | | | | | | | | | | | This update makes qdoc report an error, when it can't recognize a parameter in square brackets. Change-Id: I45d31ec875ac533736ee4a565ff3f217353068dd Task-number: QTBUG-39221 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Add new checkForCollision()Martin Smith2014-08-224-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | But don't use it yet. qdoc will check for name collisions within a module, once we decide what collisions to look for and what to do about them. This change puts a rewritten checkForCollision() function back in, but doesn't use it yet. Change-Id: I41f9275c3ca29f228268ccf7cb2d99bbe0ce557c Task-number: QTBUG-40506 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Remove all collision node stuff from qdocMartin Smith2014-08-2216-711/+72
| | | | | | | | | | | | | | | | | | | | | | | | Now that the qdoc link command has ability to tell qdoc which module contains a link target or whether to link to a QML or CPP entity, collision pages should no longer be necessary. In fact, qdoc hasn't been generating any collisions for some time. This task removes all the collision node code from qdoc. Task-number: QTBUG-40506 Change-Id: I34d1980ca1c0fe4bb5ad27dd4b00e61fa7e6e335 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Generate obsolete members page for QML typesMartin Smith2014-08-208-27/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | Generation of the obsolete members page, for QML types that have obsolete members, had not been implemented. This update implements that missing feature. The link to the page appears right below the link to the "All Members" page. Change-Id: I3e4bb2a68d5c8ef2bbe2e0c431eccf94ecb1fd3c Task-number: QTBUG-40214 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Allow choice of linking to QML or CPPMartin Smith2014-08-2012-467/+697
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This update enables using QML or CPP as the parameter in square brackets for the \l command. You will use this when, for example, there exist both a C++ class named QWidget and a QML type named QWidget and your \l {QWidget} links to the wrong one. Suppose you write \l {QWidget} expecting it to link to the QML type named QWidget, but it links to the C++ class named QWidget. Then write this instead: \l [QML] {QWidget} Or if you wrote \l {QWidget} expecting it to link to the C++ class, but it links to the QML type, write this instead: \l [CPP] {QWidget} A qdoc warning is printed if qdoc can not recognize the parameter in square brackets. There will be a further update to complete this task for implementing the other type of parameter that can be in the square brackets. Task-number: QTBUG-39221 Change-Id: I5dd85478f968025ecbe337a8aabcc31d8b12a86d Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | qdoc: Stop outputting duplicate \brief for QML type and module pagesTopi Reinio2014-08-141-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When generating the body of a documentation page, QDoc omits the brief description for nodes of type DocNode. Since Qt 5.4, a number of nodes are promoted from subnode types of DocNode to top-level nodes -specifically, - QML types - Modules - QML modules - Groups As a result we now see a duplicate or unintentional brief description on pages of the above type. This change instructs qdoc to skip generation of the brief for also above node types, as it was on 5.3. Task-number: QTBUG-40741 Change-Id: Id92dce27b13c68be0958225e04ed61813fdc91ee Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | Create.tag entries for QML classesDavid Edmundson2014-08-132-0/+4
| | | | | | | | | | | | | | | | | | | | This patch makes Qml Classes get written to tag files the same as C++ tags. Task-number: QTBUG-40551 Change-Id: I4a1973eeed6f7c2fdb65686c50e6ae4d273c9d7a Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org> Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Distinguish between QML property and attached propertyTopi Reinio2014-08-126-5/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A recent change in qtdeclarative (60ed6a43) added an attached property 'Window' to Item type, with property names identical to the ones already available in Window. This caused QDoc to report warnings for duplicate documentation for QML properties, because there was no distiction between a QML property and an attached property. This change fixes the issue by: - Allowing identical names for \qmlproperty and \qmlattachedproperty - Using distinct URLs/UUIDs/anchor references for them - Marking attached properties with '[attached]' qualifier in 'All Members' page. This doesn't solve the issue of disambiguating between a similarly named QML property and attached property when linking from an external location. However, these can be solved with the help of the \target command. Task-number: QTBUG-40674 Change-Id: Icc74de237366e9897334689fe354ab83e4af0356 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Micro-optimize qdoc codeparser.Jędrzej Nowacki2014-08-071-2/+2
| | | | | | | | | | | | | | | | There is no need to allocate new string while a simple reference is enough. Change-Id: I137b58fc180fe9a7bff9d0f9e546ca04aa9f4696 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Micro-optimize qdocJędrzej Nowacki2014-07-311-3/+3
| | | | | | | | | | | | | | Avoid redundant QStringRef to QString conversions. Change-Id: I535e7ba02b4ac5abef6036f631e228205e63f32a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QDoc: Fixed section title offset in QML basic type pages.Jerome Pasion2014-07-231-0/+1
| | | | | | | | | | | | | | | | | | | | -QML basic type page layout is now separate from the other doc page layouts, but the section offset was incorrect. -the offset is the same as the QML type pages. Change-Id: I422e97eebe58a87c11607f2c8c5aedb10abbda7e Task-number: QTBUG-40335 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | QDoc: Restored QML basic type pages' table of contents.Jerome Pasion2014-07-231-0/+2
| | | | | | | | | | | | | | | | | | -QDoc in 5.4 processed QML basic types as separate pages but the ToC wasn't added. Change-Id: I5a887158bacef923e765accac7ee5ca7c2c7a12b Task-number: QTBUG-40335 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | qdoc: Validate index file pathsTopi Reinio2014-07-181-1/+10
| | | | | | | | | | | | | | | | | | | | | | Check for existence of the paths added by 'indexes' documentation configuration command, and generate warnings accordingly. Also, ensure that the strings added with 'depends' command contain no duplicates. Change-Id: I66a3d1b25907567bb5bfc72b78a8009d7bd8e067 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | qdoc: Support use of \value command outside \enum topic.Topi Reinio2014-07-184-15/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though qdoc accepts the \value command(s) anywhere in the documentation and generates tables for them, the produced output was invalid for documentation topics other than \enum. This change fixes the issue by not trying to resolve the enumeration values and removing the 'Value' column for generated tables when the \value command is used outside c++ enum documentation topic. This enables, for example, the use of the \value command for documenting acceptable values for QML enumeration properties, without having to use custom lists or tables. Task-number: QTBUG-35019 Change-Id: I597b2f9d7d03d4ab72f276752ddf53e1c405313c Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* | QDoc: Allow the listing of uppercase- and lowercase-named items in list.Jerome Pasion2014-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | -QML basic types are lowercase-named while object types are uppercased. -reference page for QML types should list both. -caveat: simple implementation means the uppercase items are listed first. Change-Id: I9092ad0cd9e79c4d3f8b794ac5d68879ce6338a5 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | QDoc: Allow QDoc to collect all QML basic types in a map.Jerome Pasion2014-07-153-1/+22
| | | | | | | | | | | | | | | | | | | | | | -needed if a list of just QML basic types is needed. -adding QML basic types to map of QML types. -generating the list of "qmlbasictypes" also now supported. -part of the fix for QTBUG-32871 Change-Id: Id291982a5684645b2b5e75256be673c1701e60b1 Task-number: QTBUG-32871 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | QDoc: Prevent QDoc from outputting the brief for example pages.Jerome Pasion2014-07-141-1/+2
| | | | | | | | | | | | | | | | | | | | Example pages' \brief do not form a complete sentence. The example pages have proper introductions and descriptions, unlike API pages which do use the brief information to summarize. Change-Id: I11f1362cd05e3cf90ae8e1c3a07d2584737fd89c Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | QDoc: Edited title generation for QML and C++ API pagesJerome Pasion2014-07-101-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -added "QML Type" for QML types -reworded basic type pages by adding "QML Basic Type" at the end -streamlined variables in QDoc related to the HTML and page titles. These two changes were implemented in 5.3 branch, but got lost during the merge into dev: 1243940f83a5c04cc0eb64a0d1679dab3b7164f1 8e5e9d7987d0251fa61e24acbf6171879df3ae16 This commit restores the changes while ammending similar fixes Change-Id: I996b18f020b392aceeb40da7797838aca4a0626f Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-07-101-1/+1
|\| | | | | | | Change-Id: Ia12ffdb27ecdf25c2a2bdb0eed1945387502108a