65 QETProject (
const QString &path, QObject * =
nullptr);
66 QETProject (KAutoSaveFile *backup, QObject *parent=
nullptr);
85 QString
title()
const;
109 QHash <QString, NumerotationContext>
folioAutoNum()
const;
149 QDomDocument
toXml();
ProjectState m_state
Current state of the project.
bool autoConductor() const
ElementsLocation importElement(ElementsLocation &location)
QETProject::importElement Import the element represented by to the embbeded collection of this proje...
QString conductorCurrentAutoNum() const
QETProject::conductorCurrentAutoNum.
bool m_freeze_new_elements
void setTitle(const QString &)
QList< Diagram * > m_diagrams_list
Diagrams carried by the project.
bool m_read_only
Whether the project is read only.
QList< Diagram * > diagrams() const
TitleBlockProperties defaultTitleBlockProperties() const
int m_folio_sheets_quantity
Folio List Sheets quantity for this project.
void usedTitleBlockTemplateChanged(const QString &)
ConductorProperties defaultConductorProperties() const
QList< ElementsLocation > unusedElements() const
QETProject::unusedElements.
void addFolioAutoNum(const QString &key, const NumerotationContext &context)
QETProject::addFolioAutoNum Add a new folio numerotation context. If key already exist, replace old context by the new context.
void removeDiagramsTitleBlockTemplate(TitleBlockTemplatesCollection *, const QString &)
void setDefaultTitleBlockProperties(const TitleBlockProperties &)
QETProject::setDefaultTitleBlockProperties Specify the title block to be used at the creation of a ne...
void conductorAutoNumAdded()
void folioAutoNumRemoved()
void removeConductorAutoNum(const QString &key)
QETProject::removeConductorAutoNum Remove Conductor Numerotation Context stored with key...
void conductorAutoNumRemoved()
void autoFolioNumberingSelectedFolios(int, int, const QString &)
QETProject::autoFolioNumberingNewFolios.
void writeDefaultPropertiesXml(QDomElement &)
QETProject::writeDefaultPropertiesXml Export all defaults properties used by a new diagram and his co...
QHash< QString, NumerotationContext > conductorAutoNum() const
QETProject::conductorAutoNum.
bool isFreezeNewConductors()
QETProject::isFreezeNewConductors.
void setCurrrentElementAutonum(QString autoNum)
QETProject::setCurrrentElementAutonum.
QString m_file_path
File path this project is saved to.
The XRefProperties class this class store properties used by XrefItem.
void diagramUsedTemplate(TitleBlockTemplatesCollection *, const QString &)
void freezeNewElementLabel(bool freeze, int from, int to)
QETProject::freezeNewElementLabel Freeze New Elements in the selected folios.
QHash< QString, NumerotationContext > m_folio_autonum
Folio auto numbering.
void projectInformationsChanged(QETProject *)
void removeElementAutoNum(const QString &key)
QETProject::removeElementAutonum Remove Element Numerotation Context stored with key.
KAutoSaveFile * m_backup_file
void setDefaultReportProperties(const QString &properties)
void undoStackChanged(bool a)
void writeProjectPropertiesXml(QDomElement &)
void autoFolioNumberingNewFolios()
QETProject::autoFolioNumberingNewFolios emit Signal to add new Diagram with autonum properties...
void addDiagram(Diagram *)
QETProject::addDiagram Add a diagram in this project.
void setProjectProperties(const DiagramContext &)
void setAutoElement(bool ae)
TitleBlockProperties default_titleblock_properties_
Default title block properties for new diagrams created within the project.
QString m_current_conductor_autonum
void readProjectPropertiesXml(QDomDocument &xml_project)
QETProject::readProjectPropertiesXml Load project properties from the XML description of the project...
QHash< QString, NumerotationContext > folioAutoNum() const
QETProject::folioAutoNum.
void removeFolioAutoNum(const QString &key)
QETProject::removeFolioAutonum Remove Folio Numerotation Context stored with key. ...
QETResult write()
QETProject::write Save the project in a file.
void setFilePath(const QString &)
QETProject::setFilePath Set the filepath of this project file Set a file path also create a backup fi...
void updateDiagramsTitleBlockTemplate(TitleBlockTemplatesCollection *, const QString &)
void setCurrentConductorAutoNum(QString autoNum)
QETProject::setCurrentConductorAutoNum.
void reportPropertiesChanged(const QString &old_str, const QString &new_str)
~QETProject() override
QETProject::~QETProject Destructor.
int folioIndex(const Diagram *) const
set the folio sheets quantity for this project
XmlElementCollection * m_elements_collection
int getFolioSheetsQuantity() const
ConductorProperties default_conductor_properties_
Default conductor properties for new diagrams created within the project.
void diagramAdded(QETProject *, Diagram *)
XmlElementCollection * embeddedElementCollection() const
QETProject::embeddedCollection.
void readProjectXml(QDomDocument &xml_project)
QETProject::readProjectXml Read and make the project from an xml description.
bool m_freeze_new_conductors
void setDefaultBorderProperties(const BorderProperties &)
QString pathNameTitle() const
QString read_only_file_path_
Filepath for which this project is considered read only.
void setFolioSheetsQuantity(int)
get the folio sheets quantity for this project
qreal m_project_qet_version
QElectroTech version declared in the XML document at opening time.
void diagramOrderChanged(int, int)
void projectFilePathChanged(QETProject *, const QString &)
DiagramContext projectProperties()
BorderProperties defaultBorderProperties() const
DEFAULT PROPERTIES.
QString defaultReportProperties() const
QString elementAutoNumCurrentFormula() const
QETProject::elementAutoNumCurrentFormula.
QHash< QString, XRefProperties > defaultXRefProperties() const
void setFreezeNewElements(bool)
QETProject::setfreezeNewElements Set Project Wide freeze new elements.
QString conductorAutoNumFormula(const QString &key) const
QETProject::conductorAutoNumFormula.
void projectModified(QETProject *, bool)
void addConductorAutoNum(const QString &key, const NumerotationContext &context)
QETProject::addConductorAutoNum Add a new conductor numerotation context. If key already exist...
void freezeNewConductorLabel(bool freeze, int from, int to)
QETProject::freezeNewConductorLabel Freeze New Conductors in the selected folios. ...
QString m_current_element_autonum
bool usesElement(const ElementsLocation &) const
ProjectState state() const
void updateDiagramsFolioData()
void setFreezeNewConductors(bool)
QETProject::setfreezeNewConductors Set Project Wide freeze new conductors.
void elementAutoNumRemoved(QString name)
void elementAutoNumAdded(QString name)
QUndoStack * m_undo_stack
undo stack for this project
void readElementsCollectionXml(QDomDocument &xml_project)
QETProject::readElementsCollectionXml Load the diagrams from the xml description of the project...
QString elementAutoNumFormula(const QString &key) const
QETProject::elementAutoNumFormula.
void readDefaultPropertiesXml(QDomDocument &xml_project)
QETProject::readDefaultPropertiesXml load default properties for new diagram, found in the xml of thi...
void freezeExistentConductorLabel(bool freeze, int from, int to)
QETProject::freezeExistentConductorLabel Freeze Existent Conductors in the selected folios...
DiagramContext m_project_properties
project-wide variables that will be made available to child diagrams
qreal declaredQElectroTechVersion()
void writeBackup()
QETProject::writeBackup Write a backup file of this project, in the case that QET crash...
void readDiagramsXml(QDomDocument &xml_project)
QETProject::readDiagramsXml Load the diagrams from the xml description of the project. Note a project can have 0 diagram.
QString integrateTitleBlockTemplate(const TitleBlockTemplateLocation &, MoveTitleBlockTemplatesHandler *handler)
void projectDiagramsOrderChanged(QETProject *, int, int)
QString elementCurrentAutoNum() const
QETProject::elementCurrentAutoNum.
void setReadOnly(bool)
QETProject::setReadOnly Set this project to read only if = true.
void freezeExistentElementLabel(bool freeze, int from, int to)
QETProject::freezeExistentElementLabel Freeze Existent Elements in the selected folios.
bool projectOptionsWereModified()
NamesList namesListForIntegrationCategory()
bool m_modified
Whether options were modified.
void conductorAutoNumChanged()
QHash< QString, NumerotationContext > m_element_autonum
Element Auto Numbering.
QETProject(QObject *parent=nullptr)
QETProject::QETProject Create a empty project.
void setAutoConductor(bool ac)
QETProject::setAutoConductor.
void folioAutoNumChanged(QString)
the XML content is currently being processed
void readOnlyChanged(QETProject *, bool)
QString m_default_report_properties
Default report properties.
QHash< QString, XRefProperties > m_default_xref_properties
Default xref properties.
void setDefaultXRefProperties(const QString &type, const XRefProperties &properties)
BorderProperties default_border_properties_
Default dimensions and properties for new diagrams created within the project.
XRefProperties defaultXRefProperties(const QString &type) const
void removeDiagram(Diagram *)
QString project_title_
Project title.
bool usesTitleBlockTemplate(const TitleBlockTemplateLocation &)
void addElementAutoNum(const QString &key, const NumerotationContext &context)
QETProject::addElementAutoNum Add a new element numerotation context. If key already exist...
the parsing of the XML content failed
QTimer m_save_backup_timer
Q_DECLARE_METATYPE(NamesList)
QString currentDir() const
bool projectWasModified()
void setDefaultConductorProperties(const ConductorProperties &)
bool isFreezeNewElements()
QETProject::freezeNewElements.
void XRefPropertiesChanged()
QHash< QString, NumerotationContext > elementAutoNum() const
QETProject::elementAutoNum.
TitleBlockTemplatesProjectCollection * embeddedTitleBlockTemplatesCollection()
ProjectState openFile(QFile *file)
QETProject::openFile.
QList< Diagram * > addNewDiagramFolioList()
QETProject::addNewDiagramFolioList Add new diagram folio list.
void defaultTitleBlockPropertiesChanged()
QHash< QString, NumerotationContext > m_conductor_autonum
Conductor auto numerotation.
TitleBlockTemplatesProjectCollection m_titleblocks_collection
Embedded title block templates collection.
void diagramRemoved(QETProject *, Diagram *)
void init()
QETProject::init.
void projectTitleChanged(QETProject *, const QString &)
Diagram * addNewDiagram()
The XmlElementCollection class This class represent a collection of elements stored to xml...