qdoc: Make example file names unique
To avoid duplicate files for examples, the files are named this way. Suppose you have an example called mandelbrot. The example is in a subdirectory named mandelbrot, and there is a \example command somewhere like this: \example mandelbrot In this case, the mandelbrot example is in the QtCore module. Then the name of the example page will be: "qtcore-mandelbrot-example" ...and the names of the example files will be: "qtcore-mandelbrot-main-cpp.html" "qtcore-mandelbrot-mandelbrot-pro.html" "qtcore-mandelbrot-mandelbrotwidget-cpp.html" "qtcore-mandelbrot-mandelbrotwidget-h.html" "qtcore-mandelbrot-renderthread-cpp.html" "qtcore-mandelbrot-renderthread-h.html" Task-number: QTBUG-32580 Change-Id: Ic4445fd65b679523d6d94a8b0c19289d049ef0b0 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
This commit is contained in:
parent
5b4c0d4b0b
commit
d9b5cead97
@ -3698,7 +3698,7 @@ QString DitaXmlGenerator::guidForNode(const Node* node)
|
||||
Constructs a file name appropriate for the \a node and returns
|
||||
it. If the \a node is not a fake node, or if it is a fake node but
|
||||
it is neither an external page node nor an image node or a ditamap,
|
||||
call the PageGenerator::fileName() function.
|
||||
call the Generator::fileName() function.
|
||||
*/
|
||||
QString DitaXmlGenerator::fileName(const Node* node)
|
||||
{
|
||||
|
@ -358,6 +358,11 @@ QString Generator::fileBase(const Node *node) const
|
||||
if (node->subType() == Node::Module) {
|
||||
base.append("-module");
|
||||
}
|
||||
if (node->isExample() || node->isExampleFile())
|
||||
base.prepend(project.toLower() + QLatin1Char('-'));
|
||||
if (node->isExample())
|
||||
base.append(QLatin1String("-example"));
|
||||
|
||||
}
|
||||
|
||||
// the code below is effectively equivalent to:
|
||||
|
@ -193,6 +193,8 @@ public:
|
||||
void markNotSeen() { seen_ = false; }
|
||||
|
||||
virtual bool isInnerNode() const = 0;
|
||||
virtual bool isExample() const { return false; }
|
||||
virtual bool isExampleFile() const { return false; }
|
||||
virtual bool isLeaf() const { return false; }
|
||||
virtual bool isReimp() const { return false; }
|
||||
virtual bool isFunction() const { return false; }
|
||||
@ -510,6 +512,8 @@ public:
|
||||
virtual QString nameForLists() const { return title(); }
|
||||
virtual void setImageFileName(const QString& ) { }
|
||||
virtual bool isGroup() const { return (subType() == Node::Group); }
|
||||
virtual bool isExample() const { return (subType() == Node::Example); }
|
||||
virtual bool isExampleFile() const { return (parent() && parent()->isExample()); }
|
||||
|
||||
protected:
|
||||
SubType nodeSubtype_;
|
||||
|
Loading…
Reference in New Issue
Block a user