summaryrefslogtreecommitdiffstats
path: root/tools/qdoc3
diff options
context:
space:
mode:
Diffstat (limited to 'tools/qdoc3')
-rw-r--r--tools/qdoc3/codemarker.cpp2
-rw-r--r--tools/qdoc3/codeparser.cpp3
-rw-r--r--tools/qdoc3/cppcodemarker.cpp40
-rw-r--r--tools/qdoc3/cppcodeparser.cpp17
-rw-r--r--tools/qdoc3/ditaxmlgenerator.cpp13
-rw-r--r--tools/qdoc3/doc.cpp4
-rw-r--r--tools/qdoc3/doc/config/images/arrow_down.pngbin0 -> 177 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/bg_l.pngbin0 -> 100 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/bg_l_blank.pngbin0 -> 84 bytes
-rw-r--r--tools/qdoc3/doc/config/images/bg_ll_blank.pngbin0 -> 320 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/bg_r.pngbin0 -> 96 bytes
-rw-r--r--tools/qdoc3/doc/config/images/bg_ul_blank.pngbin0 -> 304 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/box_bg.pngbin0 -> 89 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/breadcrumb.pngbin0 -> 134 bytes
-rw-r--r--tools/qdoc3/doc/config/images/bullet_dn.pngbin0 -> 230 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/bullet_gt.pngbin0 -> 124 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/bullet_sq.pngbin0 -> 74 bytes
-rw-r--r--tools/qdoc3/doc/config/images/bullet_up.pngbin0 -> 210 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/feedbackground.pngbin0 -> 263 bytes
-rw-r--r--tools/qdoc3/doc/config/images/header_bg.pngbin0 -> 114 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/horBar.pngbin0 -> 2807 bytes
-rw-r--r--tools/qdoc3/doc/config/images/page.pngbin0 -> 3102 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/page_bg.pngbin0 -> 84 bytes
-rw-r--r--tools/qdoc3/doc/config/images/spinner.gifbin0 -> 2037 bytes
-rwxr-xr-xtools/qdoc3/doc/config/images/sprites-combined.pngbin0 -> 62534 bytes
-rw-r--r--tools/qdoc3/helpprojectwriter.cpp1
-rw-r--r--tools/qdoc3/htmlgenerator.cpp197
-rw-r--r--tools/qdoc3/htmlgenerator.h5
-rw-r--r--tools/qdoc3/jscodemarker.cpp2
-rw-r--r--tools/qdoc3/node.cpp75
-rw-r--r--tools/qdoc3/node.h29
-rw-r--r--tools/qdoc3/puredocparser.cpp5
-rw-r--r--tools/qdoc3/puredocparser.h1
-rw-r--r--tools/qdoc3/qmlcodemarker.cpp2
-rw-r--r--tools/qdoc3/qmlcodeparser.cpp2
-rw-r--r--tools/qdoc3/qmlmarkupvisitor.cpp2
-rw-r--r--tools/qdoc3/qmlmarkupvisitor.h2
-rw-r--r--tools/qdoc3/qmlvisitor.cpp70
-rw-r--r--tools/qdoc3/qmlvisitor.h4
-rw-r--r--tools/qdoc3/test/assistant.qdocconf6
-rw-r--r--tools/qdoc3/test/carbide-eclipse-integration.qdocconf2
-rw-r--r--tools/qdoc3/test/designer.qdocconf6
-rw-r--r--tools/qdoc3/test/jambi.qdocconf2
-rw-r--r--tools/qdoc3/test/linguist.qdocconf6
-rw-r--r--tools/qdoc3/test/qdeclarative.qdocconf16
-rw-r--r--tools/qdoc3/test/qmake.qdocconf6
-rw-r--r--tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf8
-rw-r--r--tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf10
-rw-r--r--tools/qdoc3/test/qt-cpp-ignore.qdocconf3
-rw-r--r--tools/qdoc3/test/qt-defines.qdocconf3
-rw-r--r--tools/qdoc3/test/qt-html-default-styles.qdocconf6
-rw-r--r--tools/qdoc3/test/qt-html-templates-online.qdocconf16
-rw-r--r--tools/qdoc3/test/qt-html-templates.qdocconf505
-rw-r--r--tools/qdoc3/test/qt-html-templates_ja_JP-online.qdocconf4
-rw-r--r--tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf2
-rw-r--r--tools/qdoc3/test/qt-html-templates_zh_CN-online.qdocconf4
-rw-r--r--tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf4
-rw-r--r--tools/qdoc3/test/qt-project.qdocconf14
-rw-r--r--tools/qdoc3/test/standalone-eclipse-integration.qdocconf2
-rw-r--r--tools/qdoc3/tree.cpp71
60 files changed, 728 insertions, 444 deletions
diff --git a/tools/qdoc3/codemarker.cpp b/tools/qdoc3/codemarker.cpp
index 614419e..705ef6c 100644
--- a/tools/qdoc3/codemarker.cpp
+++ b/tools/qdoc3/codemarker.cpp
@@ -76,7 +76,7 @@ CodeMarker::~CodeMarker()
A code market performs no initialization by default. Marker-specific
initialization is performed in subclasses.
*/
-void CodeMarker::initializeMarker(const Config &config)
+void CodeMarker::initializeMarker(const Config& ) // config
{
}
diff --git a/tools/qdoc3/codeparser.cpp b/tools/qdoc3/codeparser.cpp
index c7a8912..9ab5f82 100644
--- a/tools/qdoc3/codeparser.cpp
+++ b/tools/qdoc3/codeparser.cpp
@@ -287,6 +287,9 @@ void CodeParser::processCommonMetaCommand(const Location &location,
FakeNode *fake = static_cast<FakeNode *>(node);
fake->setTitle(arg);
nameToTitle.insert(fake->name(),arg);
+ if (fake->subType() == Node::Example) {
+
+ }
}
else
location.warning(tr("Ignored '\\%1'").arg(COMMAND_TITLE));
diff --git a/tools/qdoc3/cppcodemarker.cpp b/tools/qdoc3/cppcodemarker.cpp
index b81e979..743688f 100644
--- a/tools/qdoc3/cppcodemarker.cpp
+++ b/tools/qdoc3/cppcodemarker.cpp
@@ -49,6 +49,8 @@
#include "text.h"
#include "tree.h"
+#include <ctype.h>
+
QT_BEGIN_NAMESPACE
/*!
@@ -876,26 +878,6 @@ static const char * const keywordTable[] = {
"signals", "slots", "emit", 0
};
-static QString untabified(const QString &in)
-{
- QString res;
- int col = 0;
- int i = 0;
-
- for (; i < (int) in.length(); i++) {
- if (in[i] == QChar('\t')) {
- res += QString(" " + (col & 0x7));
- col = (col + 8) & ~0x7;
- } else {
- res += in[i];
- if (in[i] == QChar('\n'))
- col = 0;
- }
- }
-
- return res;
-}
-
/*
@char
@class
@@ -1155,15 +1137,15 @@ QList<Section> CppCodeMarker::qmlSections(const QmlClassNode* qmlClassNode,
"property",
"properties");
FastSection qmlsignals(qmlClassNode,
- "Signals",
+ "Signal Handlers",
"",
- "signal",
- "signals");
+ "signal handler",
+ "signal handlers");
FastSection qmlattachedsignals(qmlClassNode,
- "Attached Signals",
+ "Attached Signal Handlers",
"",
- "signal",
- "signals");
+ "signal handler",
+ "signal handlers");
FastSection qmlmethods(qmlClassNode,
"Methods",
"",
@@ -1218,9 +1200,9 @@ QList<Section> CppCodeMarker::qmlSections(const QmlClassNode* qmlClassNode,
FastSection qmlproperties(qmlClassNode, "Property Documentation","qmlprop","member","members");
FastSection qmlattachedproperties(qmlClassNode,"Attached Property Documentation","qmlattprop",
"member","members");
- FastSection qmlsignals(qmlClassNode,"Signal Documentation","qmlsig","member","members");
- FastSection qmlattachedsignals(qmlClassNode,"Attached Signal Documentation","qmlattsig",
- "member","members");
+ FastSection qmlsignals(qmlClassNode,"Signal Handler Documentation","qmlsig","handler","handlers");
+ FastSection qmlattachedsignals(qmlClassNode,"Attached Signal Handler Documentation","qmlattsig",
+ "handler","handlers");
FastSection qmlmethods(qmlClassNode,"Method Documentation","qmlmeth","member","members");
FastSection qmlattachedmethods(qmlClassNode,"Attached Method Documentation","qmlattmeth",
"member","members");
diff --git a/tools/qdoc3/cppcodeparser.cpp b/tools/qdoc3/cppcodeparser.cpp
index 6f5baa0..1a4c344 100644
--- a/tools/qdoc3/cppcodeparser.cpp
+++ b/tools/qdoc3/cppcodeparser.cpp
@@ -47,7 +47,7 @@
#include <stdio.h>
#include <errno.h>
-
+#include <qdebug.h>
#include "codechunk.h"
#include "config.h"
#include "cppcodeparser.h"
@@ -704,7 +704,7 @@ Node *CppCodeParser::processTopicCommand(const Doc& doc,
if (command == COMMAND_CLASS) {
if (paths.size() > 1) {
if (!paths[1].endsWith(".h")) {
- ClassNode*cnode = static_cast<ClassNode*>(node);
+ ClassNode* cnode = static_cast<ClassNode*>(node);
cnode->setQmlElement(paths[1]);
}
}
@@ -712,9 +712,9 @@ Node *CppCodeParser::processTopicCommand(const Doc& doc,
return node;
}
else if (command == COMMAND_EXAMPLE) {
- FakeNode *fake = new FakeNode(tre->root(), arg, Node::Example);
- createExampleFileNodes(fake);
- return fake;
+ ExampleNode* en = new ExampleNode(tre->root(), arg);
+ createExampleFileNodes(en);
+ return en;
}
else if (command == COMMAND_EXTERNALPAGE) {
return new FakeNode(tre->root(), arg, Node::ExternalPage);
@@ -2349,8 +2349,8 @@ void CppCodeParser::createExampleFileNodes(FakeNode *fake)
proFileName,
userFriendlyFilePath);
if (fullPath.isEmpty()) {
- fake->doc().location().warning(
- tr("Cannot find file '%1' or '%2'").arg(tmp).arg(proFileName));
+ fake->doc().location().warning(tr("Cannot find file '%1' or '%2'").arg(tmp).arg(proFileName));
+ fake->doc().location().warning(tr("EXAMPLE PATH DOES NOT EXIST: %1").arg(examplePath));
return;
}
}
@@ -2362,7 +2362,6 @@ void CppCodeParser::createExampleFileNodes(FakeNode *fake)
QStringList exampleFiles = Config::getFilesHere(fullPath,exampleNameFilter);
QString imagesPath = fullPath + "/images";
QStringList imageFiles = Config::getFilesHere(imagesPath,exampleImageFilter);
-
if (!exampleFiles.isEmpty()) {
// move main.cpp and to the end, if it exists
QString mainCpp;
@@ -2382,7 +2381,7 @@ void CppCodeParser::createExampleFileNodes(FakeNode *fake)
exampleFiles.append(mainCpp);
// add any qmake Qt resource files and qmake project files
- exampleFiles += Config::getFilesHere(fullPath, "*.qrc *.pro qmldir");
+ exampleFiles += Config::getFilesHere(fullPath, "*.qrc *.pro *.qmlproject qmldir");
}
foreach (const QString &exampleFile, exampleFiles)
diff --git a/tools/qdoc3/ditaxmlgenerator.cpp b/tools/qdoc3/ditaxmlgenerator.cpp
index 64f12d6..e3e32a0 100644
--- a/tools/qdoc3/ditaxmlgenerator.cpp
+++ b/tools/qdoc3/ditaxmlgenerator.cpp
@@ -751,7 +751,7 @@ int DitaXmlGenerator::generateAtom(const Atom *atom,
{
writeStartTag(DT_codeblock);
xmlWriter().writeAttribute("outputclass","cpp");
- QString chars = trimmedTrailing(atom->string());
+ QString chars = trimmedTrailing(atom->string());
writeText(chars, marker, relative);
writeEndTag(); // </codeblock>
}
@@ -2101,9 +2101,10 @@ DitaXmlGenerator::generateClassLikeNode(const InnerNode* inner, CodeMarker* mark
generateSince(qcn, marker);
enterSection("h2","Detailed Description");
generateBody(qcn, marker);
- if (cn)
+ if (cn) {
generateQmlText(cn->doc().body(), cn, marker, qcn->name());
- generateAlsoList(cn, marker);
+ generateAlsoList(cn, marker);
+ }
leaveSection();
leaveSection(); // </apiDesc>
@@ -3391,6 +3392,7 @@ void DitaXmlGenerator::writeText(const QString& markedCode,
"<@type>", "<@type>",
"<@headerfile>", "<@headerfile>",
"<@func>", "<@func>",
+ "<@func ", "<@func ",
"<@param>", "<@param>",
"<@extra>", "<@extra>",
"</@link>", "</@link>",
@@ -3403,7 +3405,7 @@ void DitaXmlGenerator::writeText(const QString& markedCode,
for (int i = 0, n = src.size(); i < n;) {
if (src.at(i) == charLangle) {
bool handled = false;
- for (int k = 0; k != 12; ++k) {
+ for (int k = 0; k != 13; ++k) {
const QString & tag = spanTags[2 * k];
if (tag == QStringRef(&src, i, tag.length())) {
html += spanTags[2 * k + 1];
@@ -4316,7 +4318,8 @@ void DitaXmlGenerator::generateDetailedQmlMember(const Node* node,
writeStartTag(DT_li);
writeGuidAttribute((Node*)qpn);
QString attr;
- if (!qpn->isWritable(myTree))
+ const ClassNode* cn = qpn->declarativeCppNode();
+ if (cn && !qpn->isWritable(myTree))
attr = "read-only";
if (qpgn->isDefault()) {
if (!attr.isEmpty())
diff --git a/tools/qdoc3/doc.cpp b/tools/qdoc3/doc.cpp
index 37f68f8..f1f1418 100644
--- a/tools/qdoc3/doc.cpp
+++ b/tools/qdoc3/doc.cpp
@@ -62,7 +62,7 @@ QT_BEGIN_NAMESPACE
Q_GLOBAL_STATIC(QSet<QString>, null_Set_QString)
Q_GLOBAL_STATIC(QStringList, null_QStringList)
Q_GLOBAL_STATIC(QList<Text>, null_QList_Text)
-Q_GLOBAL_STATIC(QStringMap, null_QStringMap)
+//Q_GLOBAL_STATIC(QStringMap, null_QStringMap)
Q_GLOBAL_STATIC(QStringMultiMap, null_QStringMultiMap)
struct Macro
@@ -1861,7 +1861,7 @@ void DocParser::startSection(Doc::Sections unit, int cmd)
}
-void DocParser::endSection(int unit, int endCmd)
+void DocParser::endSection(int , int) // (int unit, int endCmd)
{
leavePara();
append(Atom::SectionRight, QString::number(currentSection));
diff --git a/tools/qdoc3/doc/config/images/arrow_down.png b/tools/qdoc3/doc/config/images/arrow_down.png
new file mode 100644
index 0000000..9d01e97
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/arrow_down.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bg_l.png b/tools/qdoc3/doc/config/images/bg_l.png
new file mode 100755
index 0000000..90b1da1
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bg_l.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bg_l_blank.png b/tools/qdoc3/doc/config/images/bg_l_blank.png
new file mode 100755
index 0000000..5a9673d
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bg_l_blank.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bg_ll_blank.png b/tools/qdoc3/doc/config/images/bg_ll_blank.png
new file mode 100644
index 0000000..95a1c45
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bg_ll_blank.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bg_r.png b/tools/qdoc3/doc/config/images/bg_r.png
new file mode 100755
index 0000000..f0fb121
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bg_r.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bg_ul_blank.png b/tools/qdoc3/doc/config/images/bg_ul_blank.png
new file mode 100644
index 0000000..7051261
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bg_ul_blank.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/box_bg.png b/tools/qdoc3/doc/config/images/box_bg.png
new file mode 100755
index 0000000..3322f92
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/box_bg.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/breadcrumb.png b/tools/qdoc3/doc/config/images/breadcrumb.png
new file mode 100755
index 0000000..0ded551
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/breadcrumb.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bullet_dn.png b/tools/qdoc3/doc/config/images/bullet_dn.png
new file mode 100644
index 0000000..f776247
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bullet_dn.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bullet_gt.png b/tools/qdoc3/doc/config/images/bullet_gt.png
new file mode 100755
index 0000000..7561b4e
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bullet_gt.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bullet_sq.png b/tools/qdoc3/doc/config/images/bullet_sq.png
new file mode 100755
index 0000000..a84845e
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bullet_sq.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/bullet_up.png b/tools/qdoc3/doc/config/images/bullet_up.png
new file mode 100644
index 0000000..7de2f06
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/bullet_up.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/feedbackground.png b/tools/qdoc3/doc/config/images/feedbackground.png
new file mode 100755
index 0000000..3a38d99
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/feedbackground.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/header_bg.png b/tools/qdoc3/doc/config/images/header_bg.png
new file mode 100644
index 0000000..a436aa6
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/header_bg.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/horBar.png b/tools/qdoc3/doc/config/images/horBar.png
new file mode 100755
index 0000000..100fe91
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/horBar.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/page.png b/tools/qdoc3/doc/config/images/page.png
new file mode 100644
index 0000000..1db151b
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/page.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/page_bg.png b/tools/qdoc3/doc/config/images/page_bg.png
new file mode 100755
index 0000000..9b3bd99
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/page_bg.png
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/spinner.gif b/tools/qdoc3/doc/config/images/spinner.gif
new file mode 100644
index 0000000..1ed786f
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/spinner.gif
Binary files differ
diff --git a/tools/qdoc3/doc/config/images/sprites-combined.png b/tools/qdoc3/doc/config/images/sprites-combined.png
new file mode 100755
index 0000000..3a48b21
--- /dev/null
+++ b/tools/qdoc3/doc/config/images/sprites-combined.png
Binary files differ
diff --git a/tools/qdoc3/helpprojectwriter.cpp b/tools/qdoc3/helpprojectwriter.cpp
index 6a99a3b..4629644 100644
--- a/tools/qdoc3/helpprojectwriter.cpp
+++ b/tools/qdoc3/helpprojectwriter.cpp
@@ -48,6 +48,7 @@
#include "config.h"
#include "node.h"
#include "tree.h"
+#include <qdebug.h>
QT_BEGIN_NAMESPACE
diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp
index 655c3b4..85ce9ac 100644
--- a/tools/qdoc3/htmlgenerator.cpp
+++ b/tools/qdoc3/htmlgenerator.cpp
@@ -161,6 +161,9 @@ void HtmlGenerator::initializeGenerator(const Config &config)
pleaseGenerateMacRef = config.getBool(HtmlGenerator::format() +
Config::dot +
HTMLGENERATOR_GENERATEMACREFS);
+ noBreadCrumbs = config.getBool(HtmlGenerator::format() +
+ Config::dot +
+ HTMLGENERATOR_NOBREADCRUMBS);
project = config.getString(CONFIG_PROJECT);
@@ -257,6 +260,7 @@ void HtmlGenerator::generateTree(const Tree *tree)
generatePageIndex(outputDir() + "/" + fileBase + ".pageindex");
helpProjectWriter->generate(myTree);
+ generateManifestFiles();
}
void HtmlGenerator::startText(const Node * /* relative */,
@@ -312,8 +316,10 @@ int HtmlGenerator::generateAtom(const Atom *atom,
break;
case Atom::BriefLeft:
if (relative->type() == Node::Fake) {
- skipAhead = skipAtoms(atom, Atom::BriefRight);
- break;
+ if (relative->subType() != Node::Example) {
+ skipAhead = skipAtoms(atom, Atom::BriefRight);
+ break;
+ }
}
out() << "<p>";
@@ -750,6 +756,15 @@ int HtmlGenerator::generateAtom(const Atom *atom,
out() << " alt=\"" << protectEnc(text) << "\"";
out() << " />";
helpProjectWriter->addExtraFile(fileName);
+ if ((relative->type() == Node::Fake) &&
+ (relative->subType() == Node::Example)) {
+ const ExampleNode* cen = static_cast<const ExampleNode*>(relative);
+ if (cen->imageFileName().isEmpty()) {
+ ExampleNode* en = const_cast<ExampleNode*>(cen);
+ en->setImageFileName(fileName);
+ ExampleNode::exampleNodeMap.insert(en->title(),en);
+ }
+ }
}
if (atom->type() == Atom::Image)
out() << "</p>";
@@ -1492,8 +1507,10 @@ void HtmlGenerator::generateBreadCrumbs(const QString &title,
const Node *node,
CodeMarker *marker)
{
+ if (noBreadCrumbs)
+ return;
+
Text breadcrumbs;
-
if (node->type() == Node::Class) {
const ClassNode *cn = static_cast<const ClassNode *>(node);
QString name = node->moduleName();
@@ -1780,7 +1797,6 @@ void HtmlGenerator::generateTableOfContents(const Node *node,
toc = node->doc().tableOfContents();
if (toc.isEmpty() && !sections && (node->subType() != Node::Module))
return;
- bool debug = false;
QStringList sectionNumber;
int detailsBase = 0;
@@ -3706,8 +3722,6 @@ void HtmlGenerator::endLink()
inObsoleteLink = false;
}
-#ifdef QDOC_QML
-
/*!
Generates the summary for the \a section. Only used for
sections of QML element documentation.
@@ -3764,7 +3778,8 @@ void HtmlGenerator::generateDetailedQmlMember(const Node *node,
out() << "<a name=\"" + refForNode(qpn) + "\"></a>";
- if (!qpn->isWritable(myTree)) {
+ const ClassNode* cn = qpn->declarativeCppNode();
+ if (cn && !qpn->isWritable(myTree)) {
out() << "<span class=\"qmlreadonly\">read-only</span>";
}
if (qpgn->isDefault())
@@ -4193,7 +4208,6 @@ QString HtmlGenerator::fullDocumentLocation(const Node *node)
return "";
}
else if (node->type() == Node::Fake) {
-#ifdef QDOC_QML
if ((node->subType() == Node::QmlClass) ||
(node->subType() == Node::QmlBasicType)) {
QString fb = node->fileBase();
@@ -4201,9 +4215,9 @@ QString HtmlGenerator::fullDocumentLocation(const Node *node)
return fb + ".html";
else
return Generator::outputPrefix(QLatin1String("QML")) + node->fileBase() + QLatin1String(".html");
- } else
-#endif
- parentName = node->fileBase() + ".html";
+ }
+ else
+ parentName = node->fileBase() + ".html";
}
else if (node->fileBase().isEmpty())
return "";
@@ -4314,6 +4328,165 @@ QString HtmlGenerator::fullDocumentLocation(const Node *node)
return parentName.toLower() + anchorRef;
}
-#endif
+/*!
+ This function outputs one or more manifest files in XML.
+ They are used by Creator.
+ */
+void HtmlGenerator::generateManifestFiles()
+{
+ generateManifestFile("examples", "example");
+ generateManifestFile("demos", "demo");
+ ExampleNode::exampleNodeMap.clear();
+}
+
+/*!
+ This function is called by generaqteManiferstFile(), once
+ for each manifest file to be generated. \a manifest is the
+ type of manifest file.
+ */
+void HtmlGenerator::generateManifestFile(QString manifest, QString element)
+{
+ if (ExampleNode::exampleNodeMap.isEmpty())
+ return;
+ QString fileName = manifest +"-manifest.xml";
+ QFile file(outputDir() + "/" + fileName);
+ if (!file.open(QFile::WriteOnly | QFile::Text))
+ return ;
+ bool demos = false;
+ if (manifest == "demos")
+ demos = true;
+
+ bool proceed = false;
+ ExampleNodeMap::Iterator i = ExampleNode::exampleNodeMap.begin();
+ while (i != ExampleNode::exampleNodeMap.end()) {
+ const ExampleNode* en = i.value();
+ if (demos) {
+ if (en->name().startsWith("demos")) {
+ proceed = true;
+ break;
+ }
+ }
+ else if (!en->name().startsWith("demos")) {
+ proceed = true;
+ break;
+ }
+ ++i;
+ }
+ if (!proceed)
+ return;
+
+ QXmlStreamWriter writer(&file);
+ writer.setAutoFormatting(true);
+ writer.writeStartDocument();
+ writer.writeStartElement("instructionals");
+ writer.writeAttribute("module", project);
+ writer.writeStartElement(manifest);
+
+ i = ExampleNode::exampleNodeMap.begin();
+ while (i != ExampleNode::exampleNodeMap.end()) {
+ const ExampleNode* en = i.value();
+ if (demos) {
+ if (!en->name().startsWith("demos")) {
+ ++i;
+ continue;
+ }
+ }
+ else if (en->name().startsWith("demos")) {
+ ++i;
+ continue;
+ }
+ writer.writeStartElement(element);
+ writer.writeAttribute("name", en->title());
+ //QString docUrl = projectUrl + "/" + en->fileBase() + ".html";
+ QString docUrl = "%REPLACEME%/" + en->fileBase() + ".html";
+ writer.writeAttribute("docUrl", docUrl);
+ foreach (const Node* child, en->childNodes()) {
+ if (child->subType() == Node::File) {
+ QString file = child->name();
+ if (file.endsWith(".pro") || file.endsWith(".qmlproject")) {
+ if (file.startsWith("demos/"))
+ file = file.mid(6);
+ writer.writeAttribute("projectPath", file);
+ break;
+ }
+ }
+ }
+ //writer.writeAttribute("imageUrl", projectUrl + "/" + en->imageFileName());
+ writer.writeAttribute("imageUrl", "%REPLACEME%/" + en->imageFileName());
+ writer.writeStartElement("description");
+ Text brief = en->doc().briefText();
+ if (!brief.isEmpty())
+ writer.writeCDATA(brief.toString());
+ else
+ writer.writeCDATA(QString("No description available"));
+ writer.writeEndElement(); // description
+ QStringList tags = en->title().toLower().split(" ");
+ if (!tags.isEmpty()) {
+ writer.writeStartElement("tags");
+ bool wrote_one = false;
+ for (int n=0; n<tags.size(); ++n) {
+ QString tag = tags.at(n);
+ if (tag.at(0).isDigit())
+ continue;
+ if (tag.at(0) == '-')
+ continue;
+ if (tag.startsWith("example"))
+ continue;
+ if (tag.startsWith("chapter"))
+ continue;
+ if (tag.endsWith(":"))
+ tag.chop(1);
+ if (n>0 && wrote_one)
+ writer.writeCharacters(",");
+ writer.writeCharacters(tag);
+ wrote_one = true;
+ }
+ writer.writeEndElement(); // tags
+ }
+
+ QString ename = en->name().mid(en->name().lastIndexOf('/')+1);
+ QSet<QString> usedNames;
+ foreach (const Node* child, en->childNodes()) {
+ if (child->subType() == Node::File) {
+ QString file = child->name();
+ QString fileName = file.mid(file.lastIndexOf('/')+1);
+ QString baseName = fileName;
+ if ((fileName.count(QChar('.')) > 0) &&
+ (fileName.endsWith(".cpp") ||
+ fileName.endsWith(".h") ||
+ fileName.endsWith(".qml")))
+ baseName.truncate(baseName.lastIndexOf(QChar('.')));
+ if (baseName.toLower() == ename) {
+ if (!usedNames.contains(fileName)) {
+ writer.writeStartElement("fileToOpen");
+ if (file.startsWith("demos/"))
+ file = file.mid(6);
+ writer.writeCharacters(file);
+ writer.writeEndElement(); // fileToOpen
+ usedNames.insert(fileName);
+ }
+ }
+ else if (fileName.toLower().endsWith("main.cpp") ||
+ fileName.toLower().endsWith("main.qml")) {
+ if (!usedNames.contains(fileName)) {
+ writer.writeStartElement("fileToOpen");
+ if (file.startsWith("demos/"))
+ file = file.mid(6);
+ writer.writeCharacters(file);
+ writer.writeEndElement(); // fileToOpen
+ usedNames.insert(fileName);
+ }
+ }
+ }
+ }
+ writer.writeEndElement(); // example
+ ++i;
+ }
+
+ writer.writeEndElement(); // examples
+ writer.writeEndElement(); // instructionals
+ writer.writeEndDocument();
+ file.close();
+}
QT_END_NAMESPACE
diff --git a/tools/qdoc3/htmlgenerator.h b/tools/qdoc3/htmlgenerator.h
index e36c562..62a7f605 100644
--- a/tools/qdoc3/htmlgenerator.h
+++ b/tools/qdoc3/htmlgenerator.h
@@ -87,6 +87,7 @@ class HtmlGenerator : public PageGenerator
virtual void terminateGenerator();
virtual QString format();
virtual void generateTree(const Tree *tree);
+ void generateManifestFiles();
QString protectEnc(const QString &string);
static QString protect(const QString &string, const QString &encoding = "ISO-8859-1");
@@ -106,6 +107,8 @@ class HtmlGenerator : public PageGenerator
virtual QString linkForNode(const Node *node, const Node *relative);
virtual QString refForAtom(Atom *atom, const Node *node);
+ void generateManifestFile(QString manifest, QString element);
+
private:
enum SubTitleSize { SmallSubTitle, LargeSubTitle };
enum ExtractionMarkType {
@@ -266,6 +269,7 @@ class HtmlGenerator : public PageGenerator
QString footer;
QString address;
bool pleaseGenerateMacRef;
+ bool noBreadCrumbs;
QString project;
QString projectDescription;
QString projectUrl;
@@ -296,6 +300,7 @@ class HtmlGenerator : public PageGenerator
#define HTMLGENERATOR_GENERATEMACREFS "generatemacrefs" // ### document me
#define HTMLGENERATOR_POSTHEADER "postheader"
#define HTMLGENERATOR_POSTPOSTHEADER "postpostheader"
+#define HTMLGENERATOR_NOBREADCRUMBS "nobreadcrumbs"
QT_END_NAMESPACE
diff --git a/tools/qdoc3/jscodemarker.cpp b/tools/qdoc3/jscodemarker.cpp
index bb9e829..9016988 100644
--- a/tools/qdoc3/jscodemarker.cpp
+++ b/tools/qdoc3/jscodemarker.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/tools/qdoc3/node.cpp b/tools/qdoc3/node.cpp
index 189c28f..709f03f 100644
--- a/tools/qdoc3/node.cpp
+++ b/tools/qdoc3/node.cpp
@@ -51,6 +51,8 @@
QT_BEGIN_NAMESPACE
+ExampleNodeMap ExampleNode::exampleNodeMap;
+
/*!
\class Node
\brief The Node class is a node in the Tree.
@@ -317,6 +319,38 @@ QString Node::ditaXmlHref()
}
/*!
+ If this node is a QML class node, return a pointer to it.
+ If it is a child of a QML class node, return a pointer to
+ the QML class node. Otherwise, return 0;
+ */
+const QmlClassNode* Node::qmlClassNode() const
+{
+ if (isQmlNode()) {
+ const Node* n = this;
+ while (n && n->subType() != Node::QmlClass)
+ n = n->parent();
+ if (n && n->subType() == Node::QmlClass)
+ return static_cast<const QmlClassNode*>(n);
+ }
+ return 0;
+}
+
+/*!
+ If this node is a QML node, find its QML class node,
+ and return a pointer to the C++ class node from the
+ QML class node. That pointer will be null if the QML
+ class node is a component. It will be non-null if
+ the QML class node is a QML element.
+ */
+const ClassNode* Node::declarativeCppNode() const
+{
+ const QmlClassNode* qcn = qmlClassNode();
+ if (qcn)
+ return qcn->classNode();
+ return 0;
+}
+
+/*!
\class InnerNode
*/
@@ -1073,6 +1107,16 @@ QString FakeNode::subTitle() const
}
/*!
+ The constructor calls the FakeNode constructor with
+ \a parent, \a name, and Node::Example.
+ */
+ExampleNode::ExampleNode(InnerNode* parent, const QString& name)
+ : FakeNode(parent, name, Node::Example)
+{
+ // nothing
+}
+
+/*!
\class EnumNode
*/
@@ -1694,37 +1738,6 @@ bool QmlPropertyNode::fromTrool(Trool troolean, bool defaultValue)
}
}
-static QString valueType(const QString &n)
-{
- if (n == "QPoint")
- return "QDeclarativePointValueType";
- if (n == "QPointF")
- return "QDeclarativePointFValueType";
- if (n == "QSize")
- return "QDeclarativeSizeValueType";
- if (n == "QSizeF")
- return "QDeclarativeSizeFValueType";
- if (n == "QRect")
- return "QDeclarativeRectValueType";
- if (n == "QRectF")
- return "QDeclarativeRectFValueType";
- if (n == "QVector2D")
- return "QDeclarativeVector2DValueType";
- if (n == "QVector3D")
- return "QDeclarativeVector3DValueType";
- if (n == "QVector4D")
- return "QDeclarativeVector4DValueType";
- if (n == "QQuaternion")
- return "QDeclarativeQuaternionValueType";
- if (n == "QMatrix4x4")
- return "QDeclarativeMatrix4x4ValueType";
- if (n == "QEasingCurve")
- return "QDeclarativeEasingValueType";
- if (n == "QFont")
- return "QDeclarativeFontValueType";
- return QString();
-}
-
/*!
Returns true if a QML property or attached property is
read-only. The algorithm for figuring this out is long
diff --git a/tools/qdoc3/node.h b/tools/qdoc3/node.h
index cb16bea..a08151a 100644
--- a/tools/qdoc3/node.h
+++ b/tools/qdoc3/node.h
@@ -58,7 +58,15 @@
QT_BEGIN_NAMESPACE
+class Node;
+class ClassNode;
class InnerNode;
+class ExampleNode;
+class QmlClassNode;
+
+typedef QMap<QString, const Node*> NodeMap;
+typedef QMultiMap<QString, Node*> NodeMultiMap;
+typedef QMap<QString, const ExampleNode*> ExampleNodeMap;
class Node
{
@@ -194,6 +202,8 @@ class Node
QString guid() const;
QString ditaXmlHref();
QString extractClassName(const QString &string) const;
+ const QmlClassNode* qmlClassNode() const;
+ const ClassNode* declarativeCppNode() const;
protected:
Node(Type type, InnerNode* parent, const QString& name);
@@ -380,8 +390,10 @@ class FakeNode : public InnerNode
virtual QString title() const;
virtual QString fullTitle() const;
virtual QString subTitle() const;
+ virtual QString imageFileName() const { return QString(); }
const NodeList &groupMembers() const { return gr; }
virtual QString nameForLists() const { return title(); }
+ virtual void setImageFileName(const QString& ) { }
private:
SubType sub;
@@ -390,7 +402,21 @@ class FakeNode : public InnerNode
NodeList gr;
};
-#ifdef QDOC_QML
+class ExampleNode : public FakeNode
+{
+ public:
+ ExampleNode(InnerNode* parent, const QString& name);
+ virtual ~ExampleNode() { }
+ virtual QString imageFileName() const { return imageFileName_; }
+ virtual void setImageFileName(const QString& ifn) { imageFileName_ = ifn; }
+
+ public:
+ static ExampleNodeMap exampleNodeMap;
+
+ private:
+ QString imageFileName_;
+};
+
class QmlClassNode : public FakeNode
{
public:
@@ -482,7 +508,6 @@ class QmlPropertyNode : public LeafNode
Trool wri;
bool att;
};
-#endif
class EnumItem
{
diff --git a/tools/qdoc3/puredocparser.cpp b/tools/qdoc3/puredocparser.cpp
index c7db1bf..0f21cbc 100644
--- a/tools/qdoc3/puredocparser.cpp
+++ b/tools/qdoc3/puredocparser.cpp
@@ -55,6 +55,11 @@ PureDocParser::~PureDocParser()
{
}
+QString PureDocParser::language()
+{
+ return "qdoc";
+}
+
QStringList PureDocParser::sourceFileNameFilter()
{
return QStringList("*.qdoc");
diff --git a/tools/qdoc3/puredocparser.h b/tools/qdoc3/puredocparser.h
index 7f0434d..814c829 100644
--- a/tools/qdoc3/puredocparser.h
+++ b/tools/qdoc3/puredocparser.h
@@ -64,6 +64,7 @@ public:
PureDocParser();
virtual ~PureDocParser();
+ virtual QString language();
virtual QStringList sourceFileNameFilter();
};
diff --git a/tools/qdoc3/qmlcodemarker.cpp b/tools/qdoc3/qmlcodemarker.cpp
index 179598e..1134947 100644
--- a/tools/qdoc3/qmlcodemarker.cpp
+++ b/tools/qdoc3/qmlcodemarker.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/tools/qdoc3/qmlcodeparser.cpp b/tools/qdoc3/qmlcodeparser.cpp
index ae66d6e..c74b6cb 100644
--- a/tools/qdoc3/qmlcodeparser.cpp
+++ b/tools/qdoc3/qmlcodeparser.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/tools/qdoc3/qmlmarkupvisitor.cpp b/tools/qdoc3/qmlmarkupvisitor.cpp
index f7cb606..78f51bf 100644
--- a/tools/qdoc3/qmlmarkupvisitor.cpp
+++ b/tools/qdoc3/qmlmarkupvisitor.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/tools/qdoc3/qmlmarkupvisitor.h b/tools/qdoc3/qmlmarkupvisitor.h
index 0d9e0cf..5681b2d 100644
--- a/tools/qdoc3/qmlmarkupvisitor.h
+++ b/tools/qdoc3/qmlmarkupvisitor.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/tools/qdoc3/qmlvisitor.cpp b/tools/qdoc3/qmlvisitor.cpp
index cdc4e84..a8886de 100644
--- a/tools/qdoc3/qmlvisitor.cpp
+++ b/tools/qdoc3/qmlvisitor.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -67,20 +67,32 @@ QmlDocVisitor::~QmlDocVisitor()
{
}
-QDeclarativeJS::AST::SourceLocation QmlDocVisitor::precedingComment(unsigned offset) const
+QDeclarativeJS::AST::SourceLocation QmlDocVisitor::precedingComment(quint32 offset) const
{
- QDeclarativeJS::AST::SourceLocation currentLoc;
+ QListIterator<QDeclarativeJS::AST::SourceLocation> it(engine->comments());
+ it.toBack();
- foreach (const QDeclarativeJS::AST::SourceLocation &loc, engine->comments()) {
- if (loc.begin() > lastEndOffset && loc.end() < offset)
- currentLoc = loc;
- else
+ while (it.hasPrevious()) {
+
+ QDeclarativeJS::AST::SourceLocation loc = it.previous();
+
+ if (loc.begin() <= lastEndOffset)
+ // Return if we reach the end of the preceding structure.
break;
- }
- if (currentLoc.isValid()) {
- QString comment = document.mid(currentLoc.offset, currentLoc.length);
- if (comment.startsWith("!") || comment.startsWith("*"))
- return currentLoc;
+
+ else if (usedComments.contains(loc.begin()))
+ // Return if we encounter a previously used comment.
+ break;
+
+ else if (loc.begin() > lastEndOffset && loc.end() < offset) {
+
+ // Only examine multiline comments in order to avoid snippet markers.
+ if (document.mid(loc.offset - 1, 1) == "*") {
+ QString comment = document.mid(loc.offset, loc.length);
+ if (comment.startsWith("!") || comment.startsWith("*"))
+ return loc;
+ }
+ }
}
return QDeclarativeJS::AST::SourceLocation();
@@ -93,20 +105,18 @@ void QmlDocVisitor::applyDocumentation(QDeclarativeJS::AST::SourceLocation locat
if (loc.isValid()) {
QString source = document.mid(loc.offset, loc.length);
- if (source.startsWith(QLatin1String("!")) ||
- (source.startsWith(QLatin1String("*")) &&
- source[1] != QLatin1Char('*'))) {
-
- Location start(filePath);
- start.setLineNo(loc.startLine);
- start.setColumnNo(loc.startColumn);
- Location finish(filePath);
- finish.setLineNo(loc.startLine);
- finish.setColumnNo(loc.startColumn);
-
- Doc doc(start, finish, source.mid(1), commands);
- node->setDoc(doc);
- }
+
+ Location start(filePath);
+ start.setLineNo(loc.startLine);
+ start.setColumnNo(loc.startColumn);
+ Location finish(filePath);
+ finish.setLineNo(loc.startLine);
+ finish.setColumnNo(loc.startColumn);
+
+ Doc doc(start, finish, source.mid(1), commands);
+ node->setDoc(doc);
+
+ usedComments.insert(loc.offset);
}
}
@@ -152,6 +162,11 @@ bool QmlDocVisitor::visit(QDeclarativeJS::AST::UiImportList *imports)
return true;
}
+void QmlDocVisitor::endVisit(QDeclarativeJS::AST::UiImportList *definition)
+{
+ lastEndOffset = definition->lastSourceLocation().end();
+}
+
/*!
Visits public member declarations, such as signals and properties.
These only include custom signals and properties.
@@ -195,7 +210,7 @@ bool QmlDocVisitor::visit(QDeclarativeJS::AST::UiPublicMember *member)
qmlPropGroup->setDefault();
QmlPropertyNode *qmlPropNode = new QmlPropertyNode(qmlPropGroup, name, type, false);
qmlPropNode->setWritable(!member->isReadonlyMember);
- applyDocumentation(member->firstSourceLocation(), qmlPropNode);
+ applyDocumentation(member->firstSourceLocation(), qmlPropGroup);
}
}
break;
@@ -204,7 +219,6 @@ bool QmlDocVisitor::visit(QDeclarativeJS::AST::UiPublicMember *member)
return false;
}
- //current->doc = precedingComment(member->firstSourceLocation().begin());
return true;
}
diff --git a/tools/qdoc3/qmlvisitor.h b/tools/qdoc3/qmlvisitor.h
index 34ed8c1..28821a9 100644
--- a/tools/qdoc3/qmlvisitor.h
+++ b/tools/qdoc3/qmlvisitor.h
@@ -57,6 +57,7 @@ public:
virtual ~QmlDocVisitor();
bool visit(QDeclarativeJS::AST::UiImportList *imports);
+ void endVisit(QDeclarativeJS::AST::UiImportList *definition);
bool visit(QDeclarativeJS::AST::UiObjectDefinition *definition);
void endVisit(QDeclarativeJS::AST::UiObjectDefinition *definition);
@@ -67,7 +68,7 @@ public:
bool visit(QDeclarativeJS::AST::IdentifierPropertyName *idproperty);
private:
- QDeclarativeJS::AST::SourceLocation precedingComment(unsigned offset) const;
+ QDeclarativeJS::AST::SourceLocation precedingComment(quint32 offset) const;
void applyDocumentation(QDeclarativeJS::AST::SourceLocation location, Node *node);
QDeclarativeJS::Engine *engine;
@@ -77,6 +78,7 @@ private:
QString document;
QList<QPair<QString, QString> > importList;
QSet<QString> commands;
+ QSet<quint32> usedComments;
Tree *tree;
InnerNode *current;
};
diff --git a/tools/qdoc3/test/assistant.qdocconf b/tools/qdoc3/test/assistant.qdocconf
index 4141a03..bb98db4 100644
--- a/tools/qdoc3/test/assistant.qdocconf
+++ b/tools/qdoc3/test/assistant.qdocconf
@@ -6,14 +6,14 @@ include(qt-defines.qdocconf)
project = Qt Assistant
description = Qt Assistant Manual
-url = http://doc.qt.nokia.com/4.7/
+url = http://doc.qt.nokia.com/4.8/
indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Assistant
qhp.Assistant.file = assistant.qhp
-qhp.Assistant.namespace = com.trolltech.assistant.474
+qhp.Assistant.namespace = com.trolltech.assistant.480
qhp.Assistant.virtualFolder = qdoc
qhp.Assistant.indexTitle = Qt Assistant Manual
qhp.Assistant.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.Assistant.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Assistant.filterAttributes = qt 4.7.4 tools assistant
+qhp.Assistant.filterAttributes = qt 4.8.0 tools assistant
qhp.Assistant.customFilters.Assistant.name = Qt Assistant Manual
qhp.Assistant.customFilters.Assistant.filterAttributes = qt tools assistant
qhp.Assistant.subprojects = manual examples
diff --git a/tools/qdoc3/test/carbide-eclipse-integration.qdocconf b/tools/qdoc3/test/carbide-eclipse-integration.qdocconf
index 4d43403..ff50ce6 100644
--- a/tools/qdoc3/test/carbide-eclipse-integration.qdocconf
+++ b/tools/qdoc3/test/carbide-eclipse-integration.qdocconf
@@ -6,7 +6,7 @@ macro.TheEclipseIntegration = Carbide.c++
HTML.footer = "<p /><address><hr /><div align=\"center\">\n" \
"<table width=\"100%\" cellspacing=\"0\" border=\"0\"><tr class=\"address\">\n" \
- "<td width=\"30%\" align=\"left\">Copyright &copy; 2010 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
+ "<td width=\"30%\" align=\"left\">Copyright &copy; 2011 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
"<td width=\"40%\" align=\"center\"><a href=\"http://qt.nokia.com/doc\">Trademarks</a></td>\n" \
"<td width=\"30%\" align=\"right\"><div align=\"right\">Carbide.c++</div></td>\n" \
"</tr></table></div></address>"
diff --git a/tools/qdoc3/test/designer.qdocconf b/tools/qdoc3/test/designer.qdocconf
index 6c98ddf..f59fdf0 100644
--- a/tools/qdoc3/test/designer.qdocconf
+++ b/tools/qdoc3/test/designer.qdocconf
@@ -6,14 +6,14 @@ include(qt-defines.qdocconf)
project = Qt Designer
description = Qt Designer Manual
-url = http://doc.qt.nokia.com/4.7/
+url = http://doc.qt.nokia.com/4.8/
indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Designer
qhp.Designer.file = designer.qhp
-qhp.Designer.namespace = com.trolltech.designer.474
+qhp.Designer.namespace = com.trolltech.designer.480
qhp.Designer.virtualFolder = qdoc
qhp.Designer.indexTitle = Qt Designer Manual
qhp.Designer.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.Designer.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Designer.filterAttributes = qt 4.7.4 tools designer
+qhp.Designer.filterAttributes = qt 4.8.0 tools designer
qhp.Designer.customFilters.Designer.name = Qt Designer Manual
qhp.Designer.customFilters.Designer.filterAttributes = qt tools designer
qhp.Designer.subprojects = manual examples
diff --git a/tools/qdoc3/test/jambi.qdocconf b/tools/qdoc3/test/jambi.qdocconf
index aa87826..3f4b42d 100644
--- a/tools/qdoc3/test/jambi.qdocconf
+++ b/tools/qdoc3/test/jambi.qdocconf
@@ -42,7 +42,7 @@ HTML.postheader = "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0
HTML.footer = "<p /><address><hr /><div align=\"center\">\n" \
"<table width=\"100%\" cellspacing=\"0\" border=\"0\"><tr class=\"address\">\n" \
- "<td width=\"30%\" align=\"left\">Copyright &copy; 2010 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
+ "<td width=\"30%\" align=\"left\">Copyright &copy; 2011 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
"<td width=\"40%\" align=\"center\"><a href=\"trademarks.html\">Trademarks</a></td>\n" \
"<td width=\"30%\" align=\"right\"><div align=\"right\">Qt Jambi \\version</div></td>\n" \
"</tr></table></div></address>"
diff --git a/tools/qdoc3/test/linguist.qdocconf b/tools/qdoc3/test/linguist.qdocconf
index c9d6751..7c4b938 100644
--- a/tools/qdoc3/test/linguist.qdocconf
+++ b/tools/qdoc3/test/linguist.qdocconf
@@ -6,14 +6,14 @@ include(qt-defines.qdocconf)
project = Qt Linguist
description = Qt Linguist Manual
-url = http://doc.qt.nokia.com/4.7/
+url = http://doc.qt.nokia.com/4.8/
indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Linguist
qhp.Linguist.file = linguist.qhp
-qhp.Linguist.namespace = com.trolltech.linguist.474
+qhp.Linguist.namespace = com.trolltech.linguist.480
qhp.Linguist.virtualFolder = qdoc
qhp.Linguist.indexTitle = Qt Linguist Manual
qhp.Linguist.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.Linguist.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Linguist.filterAttributes = qt 4.7.4 tools linguist
+qhp.Linguist.filterAttributes = qt 4.8.0 tools linguist
qhp.Linguist.customFilters.Linguist.name = Qt Linguist Manual
qhp.Linguist.customFilters.Linguist.filterAttributes = qt tools linguist
qhp.Linguist.subprojects = manual examples
diff --git a/tools/qdoc3/test/qdeclarative.qdocconf b/tools/qdoc3/test/qdeclarative.qdocconf
index 8fe9034..2ae2fd6 100644
--- a/tools/qdoc3/test/qdeclarative.qdocconf
+++ b/tools/qdoc3/test/qdeclarative.qdocconf
@@ -6,7 +6,7 @@ include(qt-defines.qdocconf)
project = Qml
description = Qml Reference Documentation
-url = http://qt.nokia.com/doc/4.7/
+url = http://qt.nokia.com/doc/4.8/
qmlonly = true
edition.Console.modules = QtCore QtDBus QtNetwork QtScript QtSql QtXml \
@@ -21,7 +21,7 @@ edition.DesktopLight.groups = -graphicsview-api
qhp.projects = Qml
qhp.Qml.file = qml.qhp
-qhp.Qml.namespace = com.trolltech.qml.474
+qhp.Qml.namespace = com.trolltech.qml.480
qhp.Qml.virtualFolder = qdoc
qhp.Qml.indexTitle = Qml Reference
@@ -29,9 +29,9 @@ qhp.Qml.indexTitle = Qml Reference
# See also extraimages.HTML
qhp.Qml.extraFiles = images/bg_l.png \
images/bg_l_blank.png \
- images/bg_ll_blank.png \
- images/bg_ul_blank.png \
- images/header_bg.png \
+ images/bg_ll_blank.png \
+ images/bg_ul_blank.png \
+ images/header_bg.png \
images/bg_r.png \
images/box_bg.png \
images/breadcrumb.png \
@@ -61,9 +61,9 @@ qhp.Qml.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Qml.filterAttributes = qt 4.7.4 qtrefdoc
-qhp.Qml.customFilters.Qt.name = Qt 4.7.4
-qhp.Qml.customFilters.Qt.filterAttributes = qt 4.7.4
+qhp.Qml.filterAttributes = qt 4.8.0 qtrefdoc
+qhp.Qml.customFilters.Qt.name = Qt 4.8.0
+qhp.Qml.customFilters.Qt.filterAttributes = qt 4.8.0
qhp.Qml.subprojects = classes
qhp.Qml.subprojects.classes.title = Elements
qhp.Qml.subprojects.classes.indexTitle = Qml Elements
diff --git a/tools/qdoc3/test/qmake.qdocconf b/tools/qdoc3/test/qmake.qdocconf
index c5a0f40..56e7f96 100644
--- a/tools/qdoc3/test/qmake.qdocconf
+++ b/tools/qdoc3/test/qmake.qdocconf
@@ -6,14 +6,14 @@ include(qt-defines.qdocconf)
project = QMake
description = QMake Manual
-url = http://qt.nokia.com/doc/4.7
+url = http://qt.nokia.com/doc/4.8
indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = qmake
qhp.qmake.file = qmake.qhp
-qhp.qmake.namespace = com.trolltech.qmake.474
+qhp.qmake.namespace = com.trolltech.qmake.480
qhp.qmake.virtualFolder = qdoc
qhp.qmake.indexTitle = QMake Manual
qhp.qmake.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.qmake.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.qmake.filterAttributes = qt 4.7.4 tools qmake
+qhp.qmake.filterAttributes = qt 4.8.0 tools qmake
qhp.qmake.customFilters.qmake.name = qmake Manual
qhp.qmake.customFilters.qmake.filterAttributes = qt tools qmake
qhp.qmake.subprojects = manual
diff --git a/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf b/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
index a14054c..06cc9a0 100644
--- a/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
+++ b/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
@@ -17,15 +17,15 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.474
+qhp.Qt.namespace = com.trolltech.qt.480
qhp.Qt.virtualFolder = qdoc
qhp.Qt.title = Qt
qhp.Qt.indexTitle = Qt
qhp.Qt.selectors = fake:example
-qhp.Qt.filterAttributes = qt 4.7.4 qtrefdoc ja_JP
-qhp.Qt.customFilters.Qt.name = Qt 4.7.4
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.4
+qhp.Qt.filterAttributes = qt 4.8.0 qtrefdoc ja_JP
+qhp.Qt.customFilters.Qt.name = Qt 4.8.0
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.8.0
# Files not referenced in any qdoc file (last four are needed by qtdemo)
# See also extraimages.HTML
diff --git a/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf b/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
index d4d43b8..1efda05 100644
--- a/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
+++ b/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
@@ -6,7 +6,7 @@ include(qt-defines.qdocconf)
project = Qt
description = Qt Reference Documentation
-url = http://qt.nokia.com/doc/zh_CN/4.7
+url = http://qt.nokia.com/doc/zh_CN/4.8
sourceencoding = UTF-8
outputencoding = UTF-8
@@ -17,15 +17,15 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.474
+qhp.Qt.namespace = com.trolltech.qt.480
qhp.Qt.virtualFolder = qdoc
qhp.Qt.title = 教程
qhp.Qt.indexTitle = 教程
qhp.Qt.selectors = fake:example
-qhp.Qt.filterAttributes = qt 4.7.4 qtrefdoc zh_CN
-qhp.Qt.customFilters.Qt.name = Qt 4.7.4
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.4
+qhp.Qt.filterAttributes = qt 4.8.0 qtrefdoc zh_CN
+qhp.Qt.customFilters.Qt.name = Qt 4.8.0
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.8.0
# Files not referenced in any qdoc file (last four are needed by qtdemo)
# See also extraimages.HTML
diff --git a/tools/qdoc3/test/qt-cpp-ignore.qdocconf b/tools/qdoc3/test/qt-cpp-ignore.qdocconf
index 044eef4..5b41ae3 100644
--- a/tools/qdoc3/test/qt-cpp-ignore.qdocconf
+++ b/tools/qdoc3/test/qt-cpp-ignore.qdocconf
@@ -73,7 +73,8 @@ Cpp.ignoretokens = QAXFACTORY_EXPORT \
Q_DECLARATIVE_EXPORT \
Q_GADGET \
QWEBKIT_EXPORT \
- Q_INVOKABLE
+ Q_INVOKABLE \
+ Q_DECL_CONSTEXPR
Cpp.ignoredirectives = Q_DECLARE_HANDLE \
Q_DECLARE_INTERFACE \
Q_DECLARE_METATYPE \
diff --git a/tools/qdoc3/test/qt-defines.qdocconf b/tools/qdoc3/test/qt-defines.qdocconf
index 50a355f..aaf935a 100644
--- a/tools/qdoc3/test/qt-defines.qdocconf
+++ b/tools/qdoc3/test/qt-defines.qdocconf
@@ -10,7 +10,8 @@ defines = Q_QDOC \
Q_BYTE_ORDER \
QT_DEPRECATED \
Q_NO_USING_KEYWORD \
- __cplusplus
+ __cplusplus \
+ Q_COMPILER_INITIALIZER_LISTS
versionsym = QT_VERSION_STR
diff --git a/tools/qdoc3/test/qt-html-default-styles.qdocconf b/tools/qdoc3/test/qt-html-default-styles.qdocconf
index d37ef5d..0db36bc 100644
--- a/tools/qdoc3/test/qt-html-default-styles.qdocconf
+++ b/tools/qdoc3/test/qt-html-default-styles.qdocconf
@@ -8,8 +8,10 @@ HTML.stylesheets = style/offline.css
HTML.scripts =
-# Files not referenced in any qdoc file (last four needed by qtdemo)
-# See also qhp.Qt.extraFiles
+# Files not referenced in any qdoc file, many needed by style sheets.
+# These also need to be listed in qhp.Qt.extraFiles with the correct
+# directory prefixes.
+
extraimages.HTML = qt-logo.png \
arrow_down.png \
breadcrumb.png \
diff --git a/tools/qdoc3/test/qt-html-templates-online.qdocconf b/tools/qdoc3/test/qt-html-templates-online.qdocconf
index 77ab3c5..3584b68 100644
--- a/tools/qdoc3/test/qt-html-templates-online.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates-online.qdocconf
@@ -19,7 +19,7 @@ HTML.postheader = \
" </div>\n" \
" <div id=\"shortCut\">\n" \
" <ul>\n" \
- " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.7</a></span></li>\n" \
+ " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.8</a></span></li>\n" \
" <li class=\"shortCut-topleft-active\"><a href=\"http://doc.qt.nokia.com\">ALL VERSIONS" \
" </a></li>\n" \
" </ul>\n" \
@@ -181,16 +181,4 @@ HTML.footer = \
" <div id=\"blurpage\">\n" \
" </div>\n" \
"\n" \
- " <script src=\"scripts/functions.js\" type=\"text/javascript\"></script>\n" \
- " <script type=\"text/javascript\">\n" \
- " var _gaq = _gaq || [];\n" \
- " _gaq.push(['_setAccount', 'UA-4457116-5']);\n" \
- " _gaq.push(['_trackPageview']);\n" \
- " (function() {\n" \
- " var ga = document.createElement('script'); " \
- "ga.type = 'text/javascript'; ga.async = true;\n" \
- " ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + " \
- "'.google-analytics.com/ga.js';\n" \
- " var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\n" \
- " })();\n" \
- " </script>\n"
+ " <script src=\"scripts/functions.js\" type=\"text/javascript\"></script>\n"
diff --git a/tools/qdoc3/test/qt-html-templates.qdocconf b/tools/qdoc3/test/qt-html-templates.qdocconf
index 8a70f3b..4f0cb1f 100644
--- a/tools/qdoc3/test/qt-html-templates.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates.qdocconf
@@ -55,256 +55,255 @@ qhp.Qt.extraFiles = index.html \
#QtWebKit Guide files
qhp.Qt.extraFiles += webkit-guide/anim_accord.htm \
-webkit-guide/anim_demo-rotate.htm \
-webkit-guide/anim_demo-scale.htm \
-webkit-guide/anim_demo-skew.htm \
-webkit-guide/anim_gallery.htm \
-webkit-guide/anim_panel.htm \
-webkit-guide/anim_pulse.htm \
-webkit-guide/anim_skew.htm \
-webkit-guide/anim_slide1.htm \
-webkit-guide/anim_slide2.htm \
-webkit-guide/anim_slide3.htm \
-webkit-guide/anim_tabbedSkew.htm \
-webkit-guide/_copyright.txt \
-webkit-guide/css3_backgrounds.htm \
-webkit-guide/css3_border-img.htm \
-webkit-guide/css3_gradientBack.htm \
-webkit-guide/css3_gradientBackStop.htm \
-webkit-guide/css3_gradientButton.htm \
-webkit-guide/css3_grad-radial.htm \
-webkit-guide/css3_mask-grad.htm \
-webkit-guide/css3_mask-img.htm \
-webkit-guide/css3_multicol.htm \
-webkit-guide/css3_reflect.htm \
-webkit-guide/css3_scroll.htm \
-webkit-guide/css3_sel-nth.htm \
-webkit-guide/css3_shadow.htm \
-webkit-guide/css3_text-overflow.htm \
-webkit-guide/css3_text-shadow.htm \
-webkit-guide/css3_text-stroke.htm \
-webkit-guide/form_tapper.htm \
-webkit-guide/form_toggler.htm \
-webkit-guide/_image_assets.htm \
-webkit-guide/_index.html \
-webkit-guide/layout_link-fmt.htm \
-webkit-guide/layout_tbl-keyhole.htm \
-webkit-guide/mob_condjs.htm \
-webkit-guide/mob_layout.htm \
-webkit-guide/mob_mediaquery.htm \
-webkit-guide/storage.htm \
-webkit-guide/css/anim_accord.css \
-webkit-guide/css/anim_demo-rotate.css \
-webkit-guide/css/anim_demo-scale.css \
-webkit-guide/css/anim_demo-skew.css \
-webkit-guide/css/anim_gallery.css \
-webkit-guide/css/anim_panel.css \
-webkit-guide/css/anim_pulse.css \
-webkit-guide/css/anim_skew.css \
-webkit-guide/css/anim_slide.css \
-webkit-guide/css/anim_tabbedSkew.css \
-webkit-guide/css/css3_backgrounds.css \
-webkit-guide/css/css3_border-img.css \
-webkit-guide/css/css3_gradientBack.css \
-webkit-guide/css/css3_gradientBackStop.css \
-webkit-guide/css/css3_gradientButton.css \
-webkit-guide/css/css3_grad-radial.css \
-webkit-guide/css/css3_mask-grad.css \
-webkit-guide/css/css3_mask-img.css \
-webkit-guide/css/css3_multicol.css \
-webkit-guide/css/css3_reflect.css \
-webkit-guide/css/css3_scroll.css \
-webkit-guide/css/css3_sel-nth.css \
-webkit-guide/css/css3_shadowBlur.css \
-webkit-guide/css/css3_shadow.css \
-webkit-guide/css/css3_text-overflow.css \
-webkit-guide/css/css3_text-shadow.css \
-webkit-guide/css/css3_text-stroke.css \
-webkit-guide/css/form_tapper.css \
-webkit-guide/css/form_toggler.css \
-webkit-guide/css/layout_link-fmt.css \
-webkit-guide/css/layout_tbl-keyhole.css \
-webkit-guide/css/mob_condjs.css \
-webkit-guide/css/mobile.css \
-webkit-guide/css/mob_mediaquery.css \
-webkit-guide/css/mq_desktop.css \
-webkit-guide/css/mqlayout_desktop.css \
-webkit-guide/css/mqlayout_mobile.css \
-webkit-guide/css/mqlayout_touch.css \
-webkit-guide/css/mq_mobile.css \
-webkit-guide/css/mq_touch.css \
-webkit-guide/css/storage.css \
-webkit-guide/img/border-frame.png \
-webkit-guide/img/gal0.png \
-webkit-guide/img/gal1.png \
-webkit-guide/img/gal2.png \
-webkit-guide/img/gal3.png \
-webkit-guide/img/gal4.png \
-webkit-guide/img/gal5.png \
-webkit-guide/img/gal6.png \
-webkit-guide/img/gal7.png \
-webkit-guide/img/gal8.png \
-webkit-guide/img/gradient.jpg \
-webkit-guide/img/gray_icon_close.png \
-webkit-guide/img/ic_ag_016.png \
-webkit-guide/img/ic_ag_032.png \
-webkit-guide/img/ic_ag_036.png \
-webkit-guide/img/ic_ag_048.png \
-webkit-guide/img/ic_al_016.png \
-webkit-guide/img/ic_al_032.png \
-webkit-guide/img/ic_al_036.png \
-webkit-guide/img/ic_al_048.png \
-webkit-guide/img/ic_ar_016.png \
-webkit-guide/img/ic_ar_032.png \
-webkit-guide/img/ic_ar_036.png \
-webkit-guide/img/ic_ar_048.png \
-webkit-guide/img/ic_b_016.png \
-webkit-guide/img/ic_b_032.png \
-webkit-guide/img/ic_b_036.png \
-webkit-guide/img/ic_b_048.png \
-webkit-guide/img/ic_be_016.png \
-webkit-guide/img/ic_be_032.png \
-webkit-guide/img/ic_be_036.png \
-webkit-guide/img/ic_be_048.png \
-webkit-guide/img/ic_c_016.png \
-webkit-guide/img/ic_c_032.png \
-webkit-guide/img/ic_c_036.png \
-webkit-guide/img/ic_c_048.png \
-webkit-guide/img/ic_ca_016.png \
-webkit-guide/img/ic_ca_032.png \
-webkit-guide/img/ic_ca_036.png \
-webkit-guide/img/ic_ca_048.png \
-webkit-guide/img/ic_cl_016.png \
-webkit-guide/img/ic_cl_032.png \
-webkit-guide/img/ic_cl_036.png \
-webkit-guide/img/ic_cl_048.png \
-webkit-guide/img/ic_cu_016.png \
-webkit-guide/img/ic_cu_032.png \
-webkit-guide/img/ic_cu_036.png \
-webkit-guide/img/ic_cu_048.png \
-webkit-guide/img/ic_f_016.png \
-webkit-guide/img/ic_f_032.png \
-webkit-guide/img/ic_f_036.png \
-webkit-guide/img/ic_f_048.png \
-webkit-guide/img/ic_fe_016.png \
-webkit-guide/img/ic_fe_032.png \
-webkit-guide/img/ic_fe_036.png \
-webkit-guide/img/ic_fe_048.png \
-webkit-guide/img/ic_h_016.png \
-webkit-guide/img/ic_h_032.png \
-webkit-guide/img/ic_h_036.png \
-webkit-guide/img/ic_h_048.png \
-webkit-guide/img/ic_he_016.png \
-webkit-guide/img/ic_he_032.png \
-webkit-guide/img/ic_he_036.png \
-webkit-guide/img/ic_he_048.png \
-webkit-guide/img/ic_k_016.png \
-webkit-guide/img/ic_k_032.png \
-webkit-guide/img/ic_k_036.png \
-webkit-guide/img/ic_k_048.png \
-webkit-guide/img/ic_li_016.png \
-webkit-guide/img/ic_li_032.png \
-webkit-guide/img/ic_li_036.png \
-webkit-guide/img/ic_li_048.png \
-webkit-guide/img/ic_mg_016.png \
-webkit-guide/img/ic_mg_032.png \
-webkit-guide/img/ic_mg_036.png \
-webkit-guide/img/ic_mg_048.png \
-webkit-guide/img/ic_n_016.png \
-webkit-guide/img/ic_n_032.png \
-webkit-guide/img/ic_n_036.png \
-webkit-guide/img/ic_n_048.png \
-webkit-guide/img/ic_na_016.png \
-webkit-guide/img/ic_na_032.png \
-webkit-guide/img/ic_na_036.png \
-webkit-guide/img/ic_na_048.png \
-webkit-guide/img/ic_ne_016.png \
-webkit-guide/img/ic_ne_032.png \
-webkit-guide/img/ic_ne_036.png \
-webkit-guide/img/ic_ne_048.png \
-webkit-guide/img/ic_ni_016.png \
-webkit-guide/img/ic_ni_032.png \
-webkit-guide/img/ic_ni_036.png \
-webkit-guide/img/ic_ni_048.png \
-webkit-guide/img/ic_o_016.png \
-webkit-guide/img/ic_o_032.png \
-webkit-guide/img/ic_o_036.png \
-webkit-guide/img/ic_o_048.png \
-webkit-guide/img/icon_check.png \
-webkit-guide/img/icon_check_x24green.png \
-webkit-guide/img/icon_dismiss.png \
-webkit-guide/img/icon_dismiss_x22.png \
-webkit-guide/img/icon_drill-down.png \
-webkit-guide/img/icon_drill-down_x32.png \
-webkit-guide/img/icon_drill-up.png \
-webkit-guide/img/icon_drill-up_x32.png \
-webkit-guide/img/icon_expand-nav.png \
-webkit-guide/img/icon_head-collapsed.png \
-webkit-guide/img/icon_head-collapsed_x13.png \
-webkit-guide/img/icon_head-expanded.png \
-webkit-guide/img/icon_head-expanded_x13.png \
-webkit-guide/img/icon_info.png \
-webkit-guide/img/icon_info_x24.png \
-webkit-guide/img/icon_link-doc.png \
-webkit-guide/img/icon_link-email.png \
-webkit-guide/img/icon_link-external.png \
-webkit-guide/img/icon_link-pdf.png \
-webkit-guide/img/icon_link-ppt.png \
-webkit-guide/img/icon_link-rss.png \
-webkit-guide/img/icon_link-sms.png \
-webkit-guide/img/icon_link-tel.png \
-webkit-guide/img/icon_link-xls.png \
-webkit-guide/img/icon_list-all_circ.png \
-webkit-guide/img/icon_list-all.png \
-webkit-guide/img/icon_nav_end.png \
-webkit-guide/img/icon_nav-start.png \
-webkit-guide/img/icon_nav-top.png \
-webkit-guide/img/icon_nav-up.png \
-webkit-guide/img/icon_question.png \
-webkit-guide/img/icon_scroll-left.png \
-webkit-guide/img/icon_scroll-right.png \
-webkit-guide/img/icon_trash.png \
-webkit-guide/img/ic_pt_016.png \
-webkit-guide/img/ic_pt_032.png \
-webkit-guide/img/ic_pt_036.png \
-webkit-guide/img/ic_pt_048.png \
-webkit-guide/img/ic_si_016.png \
-webkit-guide/img/ic_si_032.png \
-webkit-guide/img/ic_si_036.png \
-webkit-guide/img/ic_si_048.png \
-webkit-guide/img/ic_zn_016.png \
-webkit-guide/img/ic_zn_032.png \
-webkit-guide/img/ic_zn_036.png \
-webkit-guide/img/ic_zn_048.png \
-webkit-guide/img/land1.png \
-webkit-guide/img/land2.png \
-webkit-guide/img/land3.png \
-webkit-guide/img/land4.png \
-webkit-guide/img/land5.png \
-webkit-guide/img/land6.png \
-webkit-guide/img/land7.png \
-webkit-guide/img/land8.png \
-webkit-guide/img/mask.png \
-webkit-guide/img/tnail_gal1.png \
-webkit-guide/img/tnail_gal2.png \
-webkit-guide/img/tnail_gal3.png \
-webkit-guide/img/tnail_gal4.png \
-webkit-guide/img/tnail_gal5.png \
-webkit-guide/img/tnail_gal6.png \
-webkit-guide/img/tnail_gal7.png \
-webkit-guide/img/tnail_gal8.png \
-webkit-guide/js/anim_accord.js \
-webkit-guide/js/anim_gallery.js \
-webkit-guide/js/anim_panel.js \
-webkit-guide/js/anim_skew.js \
-webkit-guide/js/css3_backgrounds.js \
-webkit-guide/js/css3_border-img.js \
-webkit-guide/js/css3_grad-radial.js \
-webkit-guide/js/css3_mask-grad.js \
-webkit-guide/js/css3_mask-img.js \
-webkit-guide/js/css3_text-overflow.js \
-webkit-guide/js/form_tapper.js \
-webkit-guide/js/mob_condjs.js \
-webkit-guide/js/mobile.js \
-webkit-guide/js/storage.js \
-
+ webkit-guide/anim_demo-rotate.htm \
+ webkit-guide/anim_demo-scale.htm \
+ webkit-guide/anim_demo-skew.htm \
+ webkit-guide/anim_gallery.htm \
+ webkit-guide/anim_panel.htm \
+ webkit-guide/anim_pulse.htm \
+ webkit-guide/anim_skew.htm \
+ webkit-guide/anim_slide1.htm \
+ webkit-guide/anim_slide2.htm \
+ webkit-guide/anim_slide3.htm \
+ webkit-guide/anim_tabbedSkew.htm \
+ webkit-guide/_copyright.txt \
+ webkit-guide/css3_backgrounds.htm \
+ webkit-guide/css3_border-img.htm \
+ webkit-guide/css3_gradientBack.htm \
+ webkit-guide/css3_gradientBackStop.htm \
+ webkit-guide/css3_gradientButton.htm \
+ webkit-guide/css3_grad-radial.htm \
+ webkit-guide/css3_mask-grad.htm \
+ webkit-guide/css3_mask-img.htm \
+ webkit-guide/css3_multicol.htm \
+ webkit-guide/css3_reflect.htm \
+ webkit-guide/css3_scroll.htm \
+ webkit-guide/css3_sel-nth.htm \
+ webkit-guide/css3_shadow.htm \
+ webkit-guide/css3_text-overflow.htm \
+ webkit-guide/css3_text-shadow.htm \
+ webkit-guide/css3_text-stroke.htm \
+ webkit-guide/form_tapper.htm \
+ webkit-guide/form_toggler.htm \
+ webkit-guide/_image_assets.htm \
+ webkit-guide/_index.html \
+ webkit-guide/layout_link-fmt.htm \
+ webkit-guide/layout_tbl-keyhole.htm \
+ webkit-guide/mob_condjs.htm \
+ webkit-guide/mob_layout.htm \
+ webkit-guide/mob_mediaquery.htm \
+ webkit-guide/storage.htm \
+ webkit-guide/css/anim_accord.css \
+ webkit-guide/css/anim_demo-rotate.css \
+ webkit-guide/css/anim_demo-scale.css \
+ webkit-guide/css/anim_demo-skew.css \
+ webkit-guide/css/anim_gallery.css \
+ webkit-guide/css/anim_panel.css \
+ webkit-guide/css/anim_pulse.css \
+ webkit-guide/css/anim_skew.css \
+ webkit-guide/css/anim_slide.css \
+ webkit-guide/css/anim_tabbedSkew.css \
+ webkit-guide/css/css3_backgrounds.css \
+ webkit-guide/css/css3_border-img.css \
+ webkit-guide/css/css3_gradientBack.css \
+ webkit-guide/css/css3_gradientBackStop.css \
+ webkit-guide/css/css3_gradientButton.css \
+ webkit-guide/css/css3_grad-radial.css \
+ webkit-guide/css/css3_mask-grad.css \
+ webkit-guide/css/css3_mask-img.css \
+ webkit-guide/css/css3_multicol.css \
+ webkit-guide/css/css3_reflect.css \
+ webkit-guide/css/css3_scroll.css \
+ webkit-guide/css/css3_sel-nth.css \
+ webkit-guide/css/css3_shadowBlur.css \
+ webkit-guide/css/css3_shadow.css \
+ webkit-guide/css/css3_text-overflow.css \
+ webkit-guide/css/css3_text-shadow.css \
+ webkit-guide/css/css3_text-stroke.css \
+ webkit-guide/css/form_tapper.css \
+ webkit-guide/css/form_toggler.css \
+ webkit-guide/css/layout_link-fmt.css \
+ webkit-guide/css/layout_tbl-keyhole.css \
+ webkit-guide/css/mob_condjs.css \
+ webkit-guide/css/mobile.css \
+ webkit-guide/css/mob_mediaquery.css \
+ webkit-guide/css/mq_desktop.css \
+ webkit-guide/css/mqlayout_desktop.css \
+ webkit-guide/css/mqlayout_mobile.css \
+ webkit-guide/css/mqlayout_touch.css \
+ webkit-guide/css/mq_mobile.css \
+ webkit-guide/css/mq_touch.css \
+ webkit-guide/css/storage.css \
+ webkit-guide/img/border-frame.png \
+ webkit-guide/img/gal0.png \
+ webkit-guide/img/gal1.jpg \
+ webkit-guide/img/gal2.jpg \
+ webkit-guide/img/gal3.jpg \
+ webkit-guide/img/gal4.jpg \
+ webkit-guide/img/gal5.jpg \
+ webkit-guide/img/gal6.jpg \
+ webkit-guide/img/gal7.jpg \
+ webkit-guide/img/gal8.jpg \
+ webkit-guide/img/gradient.jpg \
+ webkit-guide/img/gray_icon_close.png \
+ webkit-guide/img/ic_ag_016.png \
+ webkit-guide/img/ic_ag_032.png \
+ webkit-guide/img/ic_ag_036.png \
+ webkit-guide/img/ic_ag_048.png \
+ webkit-guide/img/ic_al_016.png \
+ webkit-guide/img/ic_al_032.png \
+ webkit-guide/img/ic_al_036.png \
+ webkit-guide/img/ic_al_048.png \
+ webkit-guide/img/ic_ar_016.png \
+ webkit-guide/img/ic_ar_032.png \
+ webkit-guide/img/ic_ar_036.png \
+ webkit-guide/img/ic_ar_048.png \
+ webkit-guide/img/ic_b_016.png \
+ webkit-guide/img/ic_b_032.png \
+ webkit-guide/img/ic_b_036.png \
+ webkit-guide/img/ic_b_048.png \
+ webkit-guide/img/ic_be_016.png \
+ webkit-guide/img/ic_be_032.png \
+ webkit-guide/img/ic_be_036.png \
+ webkit-guide/img/ic_be_048.png \
+ webkit-guide/img/ic_c_016.png \
+ webkit-guide/img/ic_c_032.png \
+ webkit-guide/img/ic_c_036.png \
+ webkit-guide/img/ic_c_048.png \
+ webkit-guide/img/ic_ca_016.png \
+ webkit-guide/img/ic_ca_032.png \
+ webkit-guide/img/ic_ca_036.png \
+ webkit-guide/img/ic_ca_048.png \
+ webkit-guide/img/ic_cl_016.png \
+ webkit-guide/img/ic_cl_032.png \
+ webkit-guide/img/ic_cl_036.png \
+ webkit-guide/img/ic_cl_048.png \
+ webkit-guide/img/ic_cu_016.png \
+ webkit-guide/img/ic_cu_032.png \
+ webkit-guide/img/ic_cu_036.png \
+ webkit-guide/img/ic_cu_048.png \
+ webkit-guide/img/ic_f_016.png \
+ webkit-guide/img/ic_f_032.png \
+ webkit-guide/img/ic_f_036.png \
+ webkit-guide/img/ic_f_048.png \
+ webkit-guide/img/ic_fe_016.png \
+ webkit-guide/img/ic_fe_032.png \
+ webkit-guide/img/ic_fe_036.png \
+ webkit-guide/img/ic_fe_048.png \
+ webkit-guide/img/ic_h_016.png \
+ webkit-guide/img/ic_h_032.png \
+ webkit-guide/img/ic_h_036.png \
+ webkit-guide/img/ic_h_048.png \
+ webkit-guide/img/ic_he_016.png \
+ webkit-guide/img/ic_he_032.png \
+ webkit-guide/img/ic_he_036.png \
+ webkit-guide/img/ic_he_048.png \
+ webkit-guide/img/ic_k_016.png \
+ webkit-guide/img/ic_k_032.png \
+ webkit-guide/img/ic_k_036.png \
+ webkit-guide/img/ic_k_048.png \
+ webkit-guide/img/ic_li_016.png \
+ webkit-guide/img/ic_li_032.png \
+ webkit-guide/img/ic_li_036.png \
+ webkit-guide/img/ic_li_048.png \
+ webkit-guide/img/ic_mg_016.png \
+ webkit-guide/img/ic_mg_032.png \
+ webkit-guide/img/ic_mg_036.png \
+ webkit-guide/img/ic_mg_048.png \
+ webkit-guide/img/ic_n_016.png \
+ webkit-guide/img/ic_n_032.png \
+ webkit-guide/img/ic_n_036.png \
+ webkit-guide/img/ic_n_048.png \
+ webkit-guide/img/ic_na_016.png \
+ webkit-guide/img/ic_na_032.png \
+ webkit-guide/img/ic_na_036.png \
+ webkit-guide/img/ic_na_048.png \
+ webkit-guide/img/ic_ne_016.png \
+ webkit-guide/img/ic_ne_032.png \
+ webkit-guide/img/ic_ne_036.png \
+ webkit-guide/img/ic_ne_048.png \
+ webkit-guide/img/ic_ni_016.png \
+ webkit-guide/img/ic_ni_032.png \
+ webkit-guide/img/ic_ni_036.png \
+ webkit-guide/img/ic_ni_048.png \
+ webkit-guide/img/ic_o_016.png \
+ webkit-guide/img/ic_o_032.png \
+ webkit-guide/img/ic_o_036.png \
+ webkit-guide/img/ic_o_048.png \
+ webkit-guide/img/icon_check.png \
+ webkit-guide/img/icon_check_x24green.png \
+ webkit-guide/img/icon_dismiss.png \
+ webkit-guide/img/icon_dismiss_x22.png \
+ webkit-guide/img/icon_drill-down.png \
+ webkit-guide/img/icon_drill-down_x32.png \
+ webkit-guide/img/icon_drill-up.png \
+ webkit-guide/img/icon_drill-up_x32.png \
+ webkit-guide/img/icon_expand-nav.png \
+ webkit-guide/img/icon_head-collapsed.png \
+ webkit-guide/img/icon_head-collapsed_x13.png \
+ webkit-guide/img/icon_head-expanded.png \
+ webkit-guide/img/icon_head-expanded_x13.png \
+ webkit-guide/img/icon_info.png \
+ webkit-guide/img/icon_info_x24.png \
+ webkit-guide/img/icon_link-doc.png \
+ webkit-guide/img/icon_link-email.png \
+ webkit-guide/img/icon_link-external.png \
+ webkit-guide/img/icon_link-pdf.png \
+ webkit-guide/img/icon_link-ppt.png \
+ webkit-guide/img/icon_link-rss.png \
+ webkit-guide/img/icon_link-sms.png \
+ webkit-guide/img/icon_link-tel.png \
+ webkit-guide/img/icon_link-xls.png \
+ webkit-guide/img/icon_list-all_circ.png \
+ webkit-guide/img/icon_list-all.png \
+ webkit-guide/img/icon_nav_end.png \
+ webkit-guide/img/icon_nav-start.png \
+ webkit-guide/img/icon_nav-top.png \
+ webkit-guide/img/icon_nav-up.png \
+ webkit-guide/img/icon_question.png \
+ webkit-guide/img/icon_scroll-left.png \
+ webkit-guide/img/icon_scroll-right.png \
+ webkit-guide/img/icon_trash.png \
+ webkit-guide/img/ic_pt_016.png \
+ webkit-guide/img/ic_pt_032.png \
+ webkit-guide/img/ic_pt_036.png \
+ webkit-guide/img/ic_pt_048.png \
+ webkit-guide/img/ic_si_016.png \
+ webkit-guide/img/ic_si_032.png \
+ webkit-guide/img/ic_si_036.png \
+ webkit-guide/img/ic_si_048.png \
+ webkit-guide/img/ic_zn_016.png \
+ webkit-guide/img/ic_zn_032.png \
+ webkit-guide/img/ic_zn_036.png \
+ webkit-guide/img/ic_zn_048.png \
+ webkit-guide/img/land1.jpg \
+ webkit-guide/img/land2.jpg \
+ webkit-guide/img/land3.jpg \
+ webkit-guide/img/land4.jpg \
+ webkit-guide/img/land5.jpg \
+ webkit-guide/img/land6.jpg \
+ webkit-guide/img/land7.jpg \
+ webkit-guide/img/land8.jpg \
+ webkit-guide/img/mask.png \
+ webkit-guide/img/tnail_gal1.png \
+ webkit-guide/img/tnail_gal2.png \
+ webkit-guide/img/tnail_gal3.png \
+ webkit-guide/img/tnail_gal4.png \
+ webkit-guide/img/tnail_gal5.png \
+ webkit-guide/img/tnail_gal6.png \
+ webkit-guide/img/tnail_gal7.png \
+ webkit-guide/img/tnail_gal8.png \
+ webkit-guide/js/anim_accord.js \
+ webkit-guide/js/anim_gallery.js \
+ webkit-guide/js/anim_panel.js \
+ webkit-guide/js/anim_skew.js \
+ webkit-guide/js/css3_backgrounds.js \
+ webkit-guide/js/css3_border-img.js \
+ webkit-guide/js/css3_grad-radial.js \
+ webkit-guide/js/css3_mask-grad.js \
+ webkit-guide/js/css3_mask-img.js \
+ webkit-guide/js/css3_text-overflow.js \
+ webkit-guide/js/form_tapper.js \
+ webkit-guide/js/mob_condjs.js \
+ webkit-guide/js/mobile.js \
+ webkit-guide/js/storage.js
diff --git a/tools/qdoc3/test/qt-html-templates_ja_JP-online.qdocconf b/tools/qdoc3/test/qt-html-templates_ja_JP-online.qdocconf
index fa15d90..8dc17af 100644
--- a/tools/qdoc3/test/qt-html-templates_ja_JP-online.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates_ja_JP-online.qdocconf
@@ -24,7 +24,7 @@ HTML.postheader = \
" </div>\n" \
" <div id=\"shortCut\">\n" \
" <ul>\n" \
- " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.7</a></span></li>\n" \
+ " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.8</a></span></li>\n" \
" <li class=\"shortCut-topleft-active\"><a href=\"http://qt.nokia.com/doc/\">ALL VERSIONS" \
" </a></li>\n" \
" </ul>\n" \
@@ -149,7 +149,7 @@ HTML.footer = \
" </div> \n" \
" <div class=\"footer\">\n" \
" <p>\n" \
- " <acronym title=\"Copyright\">&copy;</acronym> 2008-2010 Nokia Corporation and/or its\n" \
+ " <acronym title=\"Copyright\">&copy;</acronym> 2008-2011 Nokia Corporation and/or its\n" \
" subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation \n" \
" in Finland and/or other countries worldwide.</p>\n" \
" <p>\n" \
diff --git a/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf b/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf
index 18ed5c1..74a4d14 100644
--- a/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates_ja_JP.qdocconf
@@ -36,7 +36,7 @@ HTML.footer = \
" </div> \n" \
" <div class=\"footer\">\n" \
" <p>\n" \
- " <acronym title=\"Copyright\">&copy;</acronym> 2008-2010 Nokia Corporation and/or its\n" \
+ " <acronym title=\"Copyright\">&copy;</acronym> 2008-2011 Nokia Corporation and/or its\n" \
" subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation \n" \
" in Finland and/or other countries worldwide.</p>\n" \
" <p>\n" \
diff --git a/tools/qdoc3/test/qt-html-templates_zh_CN-online.qdocconf b/tools/qdoc3/test/qt-html-templates_zh_CN-online.qdocconf
index 285ec27..e7e8220 100644
--- a/tools/qdoc3/test/qt-html-templates_zh_CN-online.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates_zh_CN-online.qdocconf
@@ -24,7 +24,7 @@ HTML.postheader = \
" </div>\n" \
" <div id=\"shortCut\">\n" \
" <ul>\n" \
- " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.7</a></span></li>\n" \
+ " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.8</a></span></li>\n" \
" <li class=\"shortCut-topleft-active\"><a href=\"http://qt.nokia.com/doc/\">ALL VERSIONS" \
" </a></li>\n" \
" </ul>\n" \
@@ -149,7 +149,7 @@ HTML.footer = \
" </div> \n" \
" <div class=\"footer\">\n" \
" <p>\n" \
- " <acronym title=\"Copyright\">&copy;</acronym> 2008-2010 Nokia Corporation and/or its\n" \
+ " <acronym title=\"Copyright\">&copy;</acronym> 2008-2011 Nokia Corporation and/or its\n" \
" subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation \n" \
" in Finland and/or other countries worldwide.</p>\n" \
" <p>\n" \
diff --git a/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf b/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf
index 7773aa6..b4c8f7b 100644
--- a/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf
@@ -24,7 +24,7 @@ HTML.postheader = \
" </div>\n" \
" <div id=\"shortCut\">\n" \
" <ul>\n" \
- " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.7</a></span></li>\n" \
+ " <li class=\"shortCut-topleft-inactive\"><span><a href=\"index.html\">Qt 4.8</a></span></li>\n" \
" <li class=\"shortCut-topleft-active\"><a href=\"http://qt.nokia.com/doc/\">ALL VERSIONS" \
" </a></li>\n" \
" </ul>\n" \
@@ -149,7 +149,7 @@ HTML.footer = \
" </div> \n" \
" <div class=\"footer\">\n" \
" <p>\n" \
- " <acronym title=\"Copyright\">&copy;</acronym> 2008-2010 Nokia Corporation and/or its\n" \
+ " <acronym title=\"Copyright\">&copy;</acronym> 2008-2011 Nokia Corporation and/or its\n" \
" subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation \n" \
" in Finland and/or other countries worldwide.</p>\n" \
" <p>\n" \
diff --git a/tools/qdoc3/test/qt-project.qdocconf b/tools/qdoc3/test/qt-project.qdocconf
index 9c18608..57bf797 100644
--- a/tools/qdoc3/test/qt-project.qdocconf
+++ b/tools/qdoc3/test/qt-project.qdocconf
@@ -5,8 +5,8 @@ include(qt-defines.qdocconf)
project = Qt
description = Qt Reference Documentation
-url = http://qt.nokia.com/doc/4.7
-version = 4.7.3
+url = http://qt.nokia.com/doc/4.8
+version = 4.8.0
sourceencoding = UTF-8
outputencoding = UTF-8
@@ -15,14 +15,14 @@ naturallanguage = en_US
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.474
+qhp.Qt.namespace = com.trolltech.qt.480
qhp.Qt.virtualFolder = qdoc
qhp.Qt.indexTitle = Qt Reference Documentation
qhp.Qt.indexRoot =
-qhp.Qt.filterAttributes = qt 4.7.4 qtrefdoc
-qhp.Qt.customFilters.Qt.name = Qt 4.7.4
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.4
+qhp.Qt.filterAttributes = qt 4.8.0 qtrefdoc
+qhp.Qt.customFilters.Qt.name = Qt 4.8.0
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.8.0
qhp.Qt.subprojects = classes overviews examples
qhp.Qt.subprojects.classes.title = Classes
qhp.Qt.subprojects.classes.indexTitle = Qt's Classes
@@ -105,7 +105,7 @@ exampledirs = $QT_SOURCE_TREE/doc/src \
$QT_SOURCE_TREE/examples/tutorials \
$QT_SOURCE_TREE \
$QT_SOURCE_TREE/qmake/examples \
- $QT_SOURCE_TREE/src/3rdparty/webkit/WebKit/qt/docs
+ $QT_SOURCE_TREE/src/3rdparty/webkit/Source/WebKit/qt/docs
imagedirs = $QT_SOURCE_TREE/doc/src/images \
$QT_SOURCE_TREE/examples \
$QT_SOURCE_TREE/doc/src/declarative/pics \
diff --git a/tools/qdoc3/test/standalone-eclipse-integration.qdocconf b/tools/qdoc3/test/standalone-eclipse-integration.qdocconf
index 96c2c98..850a2db 100644
--- a/tools/qdoc3/test/standalone-eclipse-integration.qdocconf
+++ b/tools/qdoc3/test/standalone-eclipse-integration.qdocconf
@@ -5,7 +5,7 @@ macro.TheEclipseIntegration = The Qt Eclipse Integration
HTML.footer = "<p /><address><hr /><div align=\"center\">\n" \
"<table width=\"100%\" cellspacing=\"0\" border=\"0\"><tr class=\"address\">\n" \
- "<td width=\"30%\" align=\"left\">Copyright &copy; 2010 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
+ "<td width=\"30%\" align=\"left\">Copyright &copy; 2011 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
"<td width=\"40%\" align=\"center\"><a href=\"http://qt.nokia.com/doc/trademarks.html\">Trademarks</a></td>\n" \
"<td width=\"30%\" align=\"right\"><div align=\"right\">Qt Eclipse Integration 1.5.3</div></td>\n" \
"</tr></table></div></address>"
diff --git a/tools/qdoc3/tree.cpp b/tools/qdoc3/tree.cpp
index 63d6ea9..21d1db0 100644
--- a/tools/qdoc3/tree.cpp
+++ b/tools/qdoc3/tree.cpp
@@ -1544,8 +1544,72 @@ bool Tree::generateIndexSection(QXmlStreamWriter &writer,
return true;
}
+
/*!
- */
+ Returns true if the node \a n1 is less than node \a n2.
+ The comparison is performed by comparing properties of the nodes in order
+ of increasing complexity.
+*/
+bool compareNodes(const Node *n1, const Node *n2)
+{
+ // Private nodes can occur in any order since they won't normally be
+ // written to the index.
+ if (n1->access() == Node::Private && n2->access() == Node::Private)
+ return true;
+
+ if (n1->location().filePath() < n2->location().filePath())
+ return true;
+ else if (n1->location().filePath() > n2->location().filePath())
+ return false;
+
+ if (n1->type() < n2->type())
+ return true;
+ else if (n1->type() > n2->type())
+ return false;
+
+ if (n1->name() < n2->name())
+ return true;
+ else if (n1->name() > n2->name())
+ return false;
+
+ if (n1->access() < n2->access())
+ return true;
+ else if (n1->access() > n2->access())
+ return false;
+
+ if (n1->type() == Node::Function && n2->type() == Node::Function) {
+ const FunctionNode *f1 = static_cast<const FunctionNode *>(n1);
+ const FunctionNode *f2 = static_cast<const FunctionNode *>(n2);
+
+ if (f1->isConst() < f2->isConst())
+ return true;
+ else if (f1->isConst() > f2->isConst())
+ return false;
+
+ if (f1->signature() < f2->signature())
+ return true;
+ else if (f1->signature() > f2->signature())
+ return false;
+ }
+
+ if (n1->type() == Node::Fake && n2->type() == Node::Fake) {
+ const FakeNode *f1 = static_cast<const FakeNode *>(n1);
+ const FakeNode *f2 = static_cast<const FakeNode *>(n2);
+ if (f1->fullTitle() < f2->fullTitle())
+ return true;
+ else if (f1->fullTitle() > f2->fullTitle())
+ return false;
+ }
+
+ return false;
+}
+
+/*!
+ Generate index sections for the child nodes of the given \a node
+ using the \a writer specified. If \a generateInternalNodes is true,
+ nodes marked as internal will be included in the index; otherwise,
+ they will be omitted.
+*/
void Tree::generateIndexSections(QXmlStreamWriter &writer,
const Node *node,
bool generateInternalNodes) const
@@ -1555,7 +1619,10 @@ void Tree::generateIndexSections(QXmlStreamWriter &writer,
if (node->isInnerNode()) {
const InnerNode *inner = static_cast<const InnerNode *>(node);
- foreach (const Node *child, inner->childNodes()) {
+ NodeList cnodes = inner->childNodes();
+ qSort(cnodes.begin(), cnodes.end(), compareNodes);
+
+ foreach (const Node *child, cnodes) {
/*
Don't generate anything for a QML property group node.
It is just a place holder for a collection of QML property