diff --git a/sources/elementspanel.cpp b/sources/elementspanel.cpp index 1a55701ba..8e0cc90a0 100644 --- a/sources/elementspanel.cpp +++ b/sources/elementspanel.cpp @@ -400,12 +400,14 @@ QTreeWidgetItem *ElementsPanel::addProject(QETProject *project) { if (TitleBlockTemplatesCollection *tbt_collection = project -> embeddedTitleBlockTemplatesCollection()) { if (QTreeWidgetItem *tbt_collection_qtwi = itemForTemplatesCollection(tbt_collection)) { + tbt_collection_qtwi -> setText(0, tr("Cartouches embarqués")); if (first_add) tbt_collection_qtwi -> setExpanded(true); } } if (ElementsCollection *elmt_collection = project -> embeddedCollection()) { if (QTreeWidgetItem *elmt_collection_qtwi = itemForElementsCollection(elmt_collection)) { + elmt_collection_qtwi -> setText(0, tr("Collection embarquée")); if (first_add) elmt_collection_qtwi -> setExpanded(true); } } diff --git a/sources/qetproject.cpp b/sources/qetproject.cpp index 1e65d699c..817914d39 100644 --- a/sources/qetproject.cpp +++ b/sources/qetproject.cpp @@ -981,7 +981,6 @@ void QETProject::readElementsCollectionXml() { // sinon lit cette collection collection_ = new XmlElementsCollection(collection_root); } - collection_ -> setTitle(tr("Collection embarqu\351e")); collection_ -> setProtocol("embed"); collection_ -> setProject(this); connect(collection_, SIGNAL(written()), this, SLOT(componentWritten())); diff --git a/sources/xmlelementscollection.cpp b/sources/xmlelementscollection.cpp index a8d6b21f9..ea97bf2ac 100644 --- a/sources/xmlelementscollection.cpp +++ b/sources/xmlelementscollection.cpp @@ -18,6 +18,7 @@ #include "xmlelementscollection.h" #include "xmlelementscategory.h" #include "qetproject.h" +#include "qetapp.h" /** Construit une collection vide @@ -55,6 +56,35 @@ XmlElementsCollection::~XmlElementsCollection() { deleteContent(); } +QString XmlElementsCollection::title() const { + if (!title_.isEmpty()) return(title_); + + // if the title attribute is empty, we generate a suitable one using the + // parent project + QString final_title; + if (project_) { + QString project_title = project_ -> title(); + if (project_title.isEmpty()) { + final_title = QString( + tr( + "Collection du projet sans titre (id %1)", + "Elements collection title when the parent project has an empty title -- %1 is the project internal id" + ) + ); + final_title = final_title.arg(QETApp::projectId(project_)); + } else { + final_title = QString( + tr( + "Collection du projet \"%1\"", + "Elements collection title when the project has a suitable title -- %1 is the project title" + ) + ); + final_title = final_title.arg(project_title); + } + } + return(final_title); +} + ElementsCategory *XmlElementsCollection::rootCategory() { return(root); } diff --git a/sources/xmlelementscollection.h b/sources/xmlelementscollection.h index 9e758aae4..c6730f508 100644 --- a/sources/xmlelementscollection.h +++ b/sources/xmlelementscollection.h @@ -38,6 +38,7 @@ class XmlElementsCollection : public ElementsCollection { // methodes public: + virtual QString title() const; virtual ElementsCategory *rootCategory(); virtual bool hasFilePath(); virtual QString filePath();