summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Boddie <david.boddie@nokia.com>2011-03-08 17:38:50 +0100
committerDavid Boddie <david.boddie@nokia.com>2011-03-08 17:38:50 +0100
commit50671831eb42423db3e41852b68187d8833c2a0c (patch)
tree9a80999fb6953c30d776674631a54bf2a491b8bc
parent7e9c0cbf02be5f7c426a81e53b5b0df39b5328ce (diff)
parent25f3fbc516aad3cbd08deaa890a3f5a93582a13b (diff)
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-doc-team into 4.7
-rw-r--r--demos/qtdemo/examplecontent.cpp6
-rw-r--r--doc/src/declarative/declarativeui.qdoc9
-rw-r--r--doc/src/declarative/qtquick-intro.qdoc5
-rw-r--r--doc/src/examples/rogue.qdoc4
-rw-r--r--doc/src/legal/qtquicklicense.qdoc40
-rw-r--r--examples/tools/undoframework/commands.cpp6
-rw-r--r--examples/tools/undoframework/commands.h1
-rw-r--r--src/corelib/kernel/qtranslator.cpp13
-rw-r--r--src/corelib/tools/qbytearray.cpp2
-rw-r--r--src/corelib/tools/qmap.cpp2
-rw-r--r--src/declarative/util/qdeclarativelistmodel.cpp2
-rw-r--r--tools/qdoc3/ditaxmlgenerator.cpp131
-rw-r--r--tools/qdoc3/ditaxmlgenerator.h30
-rw-r--r--tools/qdoc3/node.cpp8
-rw-r--r--tools/qdoc3/node.h3
15 files changed, 239 insertions, 23 deletions
diff --git a/demos/qtdemo/examplecontent.cpp b/demos/qtdemo/examplecontent.cpp
index 64737c3d3a..538525974e 100644
--- a/demos/qtdemo/examplecontent.cpp
+++ b/demos/qtdemo/examplecontent.cpp
@@ -83,8 +83,10 @@ QString ExampleContent::loadDescription()
int errorLine, errorColumn;
QDomDocument exampleDoc;
- if (!exampleDoc.setContent(ba, false, &errorMsg, &errorLine, &errorColumn)) {
- qDebug() << errorMsg << errorLine << errorColumn;
+ if (ba.isEmpty()) {
+ qDebug() << "No documentation found for" << name << "Is the documentation built?";
+ } else if (!exampleDoc.setContent(ba, false, &errorMsg, &errorLine, &errorColumn)) {
+ qDebug() << "Error loading documentation for " << name << ": " << errorMsg << errorLine << errorColumn;
}
QDomNodeList paragraphs = exampleDoc.elementsByTagName("p");
diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc
index ff38ac68cb..8d8e6c6a26 100644
--- a/doc/src/declarative/declarativeui.qdoc
+++ b/doc/src/declarative/declarativeui.qdoc
@@ -90,7 +90,7 @@ Qt applications.
\list
\o \l{Debugging QML}
-\o \l{Developing Qt Quick Applications with Creator}{Developing with Qt Creator}
+\o \l{external: Developing Qt Quick Applications with Creator}{Developing with Qt Creator}
\o \l{QML Viewer}
\endlist
@@ -102,7 +102,7 @@ Qt applications.
\o \l{Qt Declarative Module}
\o \l{QML Basic Types}{QML Data Types}
\o \l{QML Coding Conventions}
-\o \l{Qt Creator Manual}
+\o \l{external: Qt Creator Manual}{Qt Creator Manual}
\o \l{Programming with Qt}
\o \l{http://doc.qt.nokia.com/qtmobility-1.1.0/index.html}{Qt Mobility Documentation}
\endlist
@@ -140,4 +140,9 @@ examples for porting}
\o \l{QML Best Practices: Coding Conventions}{Coding Tips}
\o \l{QML Performance}{Performance Tips}
\endlist
+
+\section1 License Information
+\list
+\o \l{Qt Quick Licensing Information}
+\endlist
*/
diff --git a/doc/src/declarative/qtquick-intro.qdoc b/doc/src/declarative/qtquick-intro.qdoc
index 02b2c4477e..75236e623c 100644
--- a/doc/src/declarative/qtquick-intro.qdoc
+++ b/doc/src/declarative/qtquick-intro.qdoc
@@ -113,6 +113,11 @@ The \l {Qt Quick} page has links to various Qt Quick topics such as QML
features, addons, and tools.
The \l {QML Examples and Demos} page has a gallery of QML applications.
+
+\section1 License Information
+\list
+\o \l{Qt Quick Licensing Information}
+\endlist
*/
diff --git a/doc/src/examples/rogue.qdoc b/doc/src/examples/rogue.qdoc
index 94539ad0ec..4df0910f60 100644
--- a/doc/src/examples/rogue.qdoc
+++ b/doc/src/examples/rogue.qdoc
@@ -190,8 +190,8 @@
\snippet examples/statemachine/rogue/movementtransition.h 2
When \c onTransition() is invoked, we know that we have a
- \l{QEvent::}{KeyPress} event with 2, 4, 6, or 8, i.e., the event
- is already unwrapped.
+ \l{QEvent::}{KeyPress} event with 2, 4, 6, or 8, and can ask \c
+ Window to move the player.
\section1 The Roguelike Tradition
diff --git a/doc/src/legal/qtquicklicense.qdoc b/doc/src/legal/qtquicklicense.qdoc
new file mode 100644
index 0000000000..aa9e201891
--- /dev/null
+++ b/doc/src/legal/qtquicklicense.qdoc
@@ -0,0 +1,40 @@
+/****************************************************************************
+**
+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Free Documentation License
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of this
+** file.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+ \page qtquicklicense.html
+ \title Qt Quick Licensing Information
+ \ingroup licensing
+ \brief Qt Quick and QtDeclarative Licensing Information.
+
+
+Applications created using Qt Quick are subject to the terms and conditions of the GNU Lesser General Public License as Qt Quick includes dependencies to QtScript and JavaScriptCore which are licensed under the terms of the GNU Library General Public License ("LGPL"). Qt Commercial Edition licensees that wish to distribute applications that use the Qt Quick need to be aware of their obligations under the LGPL. Individual contributor names and copyright dates can be found inline in the code. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+On the Qt web site, you can find a
+\l{Qt Licensing Overview} and information on \l{Qt License Pricing}
+for commercial editions of Qt and other Qt-related products.
+*/
diff --git a/examples/tools/undoframework/commands.cpp b/examples/tools/undoframework/commands.cpp
index 9e81c3ec77..ff7b0b7f1d 100644
--- a/examples/tools/undoframework/commands.cpp
+++ b/examples/tools/undoframework/commands.cpp
@@ -136,6 +136,12 @@ AddCommand::AddCommand(DiagramItem::DiagramType addType,
}
//! [7]
+AddCommand::~AddCommand()
+{
+ if (!myDiagramItem->scene())
+ delete myDiagramItem;
+}
+
//! [8]
void AddCommand::undo()
{
diff --git a/examples/tools/undoframework/commands.h b/examples/tools/undoframework/commands.h
index ba27e2d51c..a4e4ab9549 100644
--- a/examples/tools/undoframework/commands.h
+++ b/examples/tools/undoframework/commands.h
@@ -87,6 +87,7 @@ class AddCommand : public QUndoCommand
public:
AddCommand(DiagramItem::DiagramType addType, QGraphicsScene *graphicsScene,
QUndoCommand *parent = 0);
+ ~AddCommand();
void undo();
void redo();
diff --git a/src/corelib/kernel/qtranslator.cpp b/src/corelib/kernel/qtranslator.cpp
index d72c1ab15d..73a32c4f10 100644
--- a/src/corelib/kernel/qtranslator.cpp
+++ b/src/corelib/kernel/qtranslator.cpp
@@ -354,10 +354,15 @@ QTranslator::~QTranslator()
}
/*!
- Loads \a filename + \a suffix (".qm" if the \a suffix is
- not specified), which may be an absolute file name or relative
- to \a directory. Returns true if the translation is successfully
- loaded; otherwise returns false.
+
+ Loads \a filename + \a suffix (".qm" if the \a suffix is not
+ specified), which may be an absolute file name or relative to \a
+ directory. Returns true if the translation is successfully loaded;
+ otherwise returns false.
+
+ If \a directory is not specified, the directory of the
+ application's executable is used (i.e., as
+ \l{QCoreApplication::}{applicationDirPath()}).
The previous contents of this translator object are discarded.
diff --git a/src/corelib/tools/qbytearray.cpp b/src/corelib/tools/qbytearray.cpp
index 568293d494..641f8d5853 100644
--- a/src/corelib/tools/qbytearray.cpp
+++ b/src/corelib/tools/qbytearray.cpp
@@ -1363,7 +1363,7 @@ QByteArray::QByteArray(int size, Qt::Initialization)
If \a size is less than the current size, bytes are removed from
the end.
- \sa size()
+ \sa size(), truncate()
*/
void QByteArray::resize(int size)
diff --git a/src/corelib/tools/qmap.cpp b/src/corelib/tools/qmap.cpp
index fe533743a4..2c028afa6e 100644
--- a/src/corelib/tools/qmap.cpp
+++ b/src/corelib/tools/qmap.cpp
@@ -1073,7 +1073,7 @@ void QMapData::dump()
\overload
- The prefix -- operator (\c{--i}) makes the preceding item
+ The postfix -- operator (\c{i--}) makes the preceding item
current and returns an iterator pointing to the previously
current item.
*/
diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp
index 159b569f32..b2739f060d 100644
--- a/src/declarative/util/qdeclarativelistmodel.cpp
+++ b/src/declarative/util/qdeclarativelistmodel.cpp
@@ -143,7 +143,7 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM
\section1 Modifying List Models
The content of a ListModel may be created and modified using the clear(),
- append(), set() and setProperty() methods. For example:
+ append(), set(), insert() and setProperty() methods. For example:
\snippet doc/src/snippets/declarative/listmodel-modify.qml delegate
diff --git a/tools/qdoc3/ditaxmlgenerator.cpp b/tools/qdoc3/ditaxmlgenerator.cpp
index affe9e1884..66f4a91e5b 100644
--- a/tools/qdoc3/ditaxmlgenerator.cpp
+++ b/tools/qdoc3/ditaxmlgenerator.cpp
@@ -96,11 +96,21 @@ QString DitaXmlGenerator::ditaTags[] =
"apiDesc",
"APIMap",
"apiName",
+ "audience",
+ "author",
"b",
"body",
"bodydiv",
+ "brand",
+ "category",
"codeblock",
"comment",
+ "component",
+ "copyrholder",
+ "copyright",
+ "copyryear",
+ "created",
+ "critdates",
"cxxAPIMap",
"cxxClass",
"cxxClassAbstract",
@@ -194,6 +204,8 @@ QString DitaXmlGenerator::ditaTags[] =
"cxxVariableReimplemented",
"cxxVariableScopedName",
"cxxVariableStorageClassSpecifierStatic",
+ "data",
+ "data-about",
"dd",
"dl",
"dlentry",
@@ -203,21 +215,33 @@ QString DitaXmlGenerator::ditaTags[] =
"i",
"image",
"keyword",
+ "keywords",
"li",
"link",
"linktext",
"lq",
+ "metadata",
"ol",
+ "othermeta",
"p",
"parameter",
+ "permissions",
"ph",
+ "platform",
"pre",
+ "prodinfo",
+ "prodname",
+ "prolog",
+ "publisher",
"related-links",
+ "resourceid",
+ "revised",
"row",
"section",
"sectiondiv",
"shortdesc",
"simpletable",
+ "source",
"stentry",
"sthead",
"strow",
@@ -233,8 +257,11 @@ QString DitaXmlGenerator::ditaTags[] =
"topicmeta",
"topicref",
"tt",
- "ul",
"u",
+ "ul",
+ "unknown",
+ "vrm",
+ "vrmlist",
"xref",
""
};
@@ -1497,7 +1524,6 @@ int DitaXmlGenerator::generateAtom(const Atom *atom,
}
}
else {
- qDebug() << "ATTR:" << attr;
QStringList spans = attr.split(",");
if (spans.size() == 2) {
if ((spans[0].toInt()>1) || (spans[1].toInt()>1)) {
@@ -1611,9 +1637,8 @@ DitaXmlGenerator::generateClassLikeNode(const InnerNode* inner, CodeMarker* mark
*/
generateHeader(inner, fullTitle);
generateBrief(inner, marker); // <shortdesc>
-
- // not included: <prolog>
-
+ writeProlog(inner,marker);
+
writeStartTag(DT_cxxClassDetail);
writeStartTag(DT_cxxClassDefinition);
writeLocation(nsn);
@@ -1735,8 +1760,7 @@ DitaXmlGenerator::generateClassLikeNode(const InnerNode* inner, CodeMarker* mark
generateHeader(inner, fullTitle);
generateBrief(inner, marker); // <shortdesc>
-
- // not included: <prolog>
+ writeProlog(inner,marker);
writeStartTag(DT_cxxClassDetail);
writeStartTag(DT_cxxClassDefinition);
@@ -1877,6 +1901,8 @@ DitaXmlGenerator::generateClassLikeNode(const InnerNode* inner, CodeMarker* mark
*/
generateHeader(inner, fullTitle);
generateBrief(inner, marker); // <shortdesc>
+ writeProlog(inner,marker);
+
writeStartTag(DT_cxxClassDetail);
writeStartTag(DT_apiDesc);
xmlWriter().writeAttribute("spectitle",title);
@@ -1996,9 +2022,8 @@ DitaXmlGenerator::generateClassLikeNode(const InnerNode* inner, CodeMarker* mark
generateHeader(inner, fullTitle);
generateBrief(inner, marker); // <shortdesc>
+ writeProlog(inner,marker);
- // not included: <prolog>
-
writeStartTag(DT_cxxClassDetail);
writeStartTag(DT_apiDesc);
xmlWriter().writeAttribute("spectitle",title);
@@ -2107,6 +2132,8 @@ void DitaXmlGenerator::generateFakeNode(const FakeNode* fake, CodeMarker* marker
generateHeader(fake, fullTitle);
generateBrief(fake, marker); // <shortdesc>
+ writeProlog(fake, marker);
+
writeStartTag(DT_body);
if (fake->subType() == Node::Module) {
generateStatus(fake, marker);
@@ -5501,4 +5528,90 @@ void DitaXmlGenerator::writeDitaMap()
endSubPage();
}
+/*!
+ Writes the <prolog> element for the \a inner node
+ using the \a marker. The <prolog> element contains
+ the <metadata> element, plus some others. This
+ function writes one or more of these elements:
+
+ \list
+ \o <audience>
+ \o <author>
+ \o <brand>
+ \o <category>
+ \o <compomnent>
+ \o <copyrholder>
+ \o <copyright>
+ \o <created>
+ \o <copyryear>
+ \o <critdates>
+ \o <keyword>
+ \o <keywords>
+ \o <metadata>
+ \o <othermeta>
+ \o <permissions>
+ \o <platform>
+ \o <prodinfo>
+ \o <prodname>
+ \o <prolog>
+ \o <publisher>
+ \o <resourceid>
+ \o <revised>
+ \o <source>
+ \o <tm>
+ \o <unknown>
+ \o <vrm>
+ \o <vrmlist>
+ \endlist
+
+ */
+void
+DitaXmlGenerator::writeProlog(const InnerNode* inner, CodeMarker* marker)
+{
+ if (!inner)
+ return;
+ writeStartTag(DT_prolog);
+
+ writeStartTag(DT_author);
+ QString author = inner->author();
+ if (author.isEmpty())
+ author = "Qt Development Frameworks";
+ xmlWriter().writeCharacters(author);
+ writeEndTag(); // <author>
+
+ writeStartTag(DT_metadata);
+ writeStartTag(DT_category);
+ QString category = "Page";
+ if (inner->type() == Node::Class)
+ category = "C++ Class";
+ else if (inner->type() == Node::Namespace)
+ category = "C++ Namespace";
+ else if (inner->type() == Node::Fake) {
+ if (inner->subType() == Node::QmlBasicType)
+ category = "QML Class";
+ else if (inner->subType() == Node::QmlClass)
+ category = "QML Basic Type";
+ else if (inner->subType() == Node::HeaderFile)
+ category = "Header File";
+ else if (inner->subType() == Node::Module)
+ category = "Module";
+ else if (inner->subType() == Node::File)
+ category = "Example Source File";
+ else if (inner->subType() == Node::Example)
+ category = "Example";
+ else if (inner->subType() == Node::Image)
+ category = "Image";
+ else if (inner->subType() == Node::Group)
+ category = "Group";
+ else if (inner->subType() == Node::Page)
+ category = "Page";
+ else if (inner->subType() == Node::ExternalPage)
+ category = "External Page"; // Is this necessary?
+ }
+ xmlWriter().writeCharacters(category);
+ writeEndTag(); // <category>
+ writeEndTag(); // <metadata>
+ writeEndTag(); // <prolog>
+}
+
QT_END_NAMESPACE
diff --git a/tools/qdoc3/ditaxmlgenerator.h b/tools/qdoc3/ditaxmlgenerator.h
index fb09013eb5..32a9b94fe1 100644
--- a/tools/qdoc3/ditaxmlgenerator.h
+++ b/tools/qdoc3/ditaxmlgenerator.h
@@ -87,11 +87,21 @@ class DitaXmlGenerator : public PageGenerator
DT_apiDesc,
DT_APIMap,
DT_apiName,
+ DT_audience,
+ DT_author,
DT_b,
DT_body,
DT_bodydiv,
+ DT_brand,
+ DT_category,
DT_codeblock,
DT_comment,
+ DT_component,
+ DT_copyrholder,
+ DT_copyright,
+ DT_copyryear,
+ DT_created,
+ DT_critdates,
DT_cxxAPIMap,
DT_cxxClass,
DT_cxxClassAbstract,
@@ -185,6 +195,8 @@ class DitaXmlGenerator : public PageGenerator
DT_cxxVariableReimplemented,
DT_cxxVariableScopedName,
DT_cxxVariableStorageClassSpecifierStatic,
+ DT_data,
+ DT_dataabout,
DT_dd,
DT_dl,
DT_dlentry,
@@ -194,21 +206,33 @@ class DitaXmlGenerator : public PageGenerator
DT_i,
DT_image,
DT_keyword,
+ DT_keywords,
DT_li,
DT_link,
DT_linktext,
DT_lq,
+ DT_metadata,
DT_ol,
+ DT_othermeta,
DT_p,
DT_parameter,
+ DT_permissions,
DT_ph,
+ DT_platform,
DT_pre,
+ DT_prodinfo,
+ DT_prodname,
+ DT_prolog,
+ DT_publisher,
DT_relatedLinks,
+ DT_resourceid,
+ DT_revised,
DT_row,
DT_section,
DT_sectiondiv,
DT_shortdesc,
DT_simpletable,
+ DT_source,
DT_stentry,
DT_sthead,
DT_strow,
@@ -224,8 +248,11 @@ class DitaXmlGenerator : public PageGenerator
DT_topicmeta,
DT_topicref,
DT_tt,
- DT_ul,
DT_u,
+ DT_ul,
+ DT_unknown,
+ DT_vrm,
+ DT_vrmlist,
DT_xref,
DT_LAST
};
@@ -288,6 +315,7 @@ class DitaXmlGenerator : public PageGenerator
void writePropertyParameter(const QString& tag, const NodeList& nlist);
void writeRelatedLinks(const FakeNode* fake, CodeMarker* marker);
void writeLink(const Node* node, const QString& tex, const QString& role);
+ void writeProlog(const InnerNode* inner, CodeMarker* marker);
private:
enum SubTitleSize { SmallSubTitle, LargeSubTitle };
diff --git a/tools/qdoc3/node.cpp b/tools/qdoc3/node.cpp
index ee050f52da..161c87ae6c 100644
--- a/tools/qdoc3/node.cpp
+++ b/tools/qdoc3/node.cpp
@@ -771,6 +771,14 @@ void InnerNode::removeChild(Node *child)
}
}
+/*! \fn QString InnerNode::author() const
+ Returns the author.
+ */
+
+/*! \fn void InnerNode::setAuthor(const QString& author)
+ Sets the \a author.
+ */
+
/*!
Find the module (QtCore, QtGui, etc.) to which the class belongs.
We do this by obtaining the full path to the header file's location
diff --git a/tools/qdoc3/node.h b/tools/qdoc3/node.h
index d1123dcdc1..3869e68095 100644
--- a/tools/qdoc3/node.h
+++ b/tools/qdoc3/node.h
@@ -262,6 +262,8 @@ class InnerNode : public Node
NodeList overloads(const QString &funcName) const;
const QStringList& includes() const { return inc; }
+ QString author() const { return author_; }
+ void setAuthor(const QString& author) { author_ = author; }
QStringList primaryKeys();
QStringList secondaryKeys();
const QStringList& pageKeywords() const { return pageKeywds; }
@@ -280,6 +282,7 @@ class InnerNode : public Node
void removeChild(Node* child);
void removeRelated(Node* pseudoChild);
+ QString author_;
QStringList pageKeywds;
QStringList inc;
NodeList children;