Auto-break conductor

This commit is contained in:
Kellermorph
2026-08-02 15:18:57 +02:00
parent c1694f2b4f
commit ca42a2b7ff
5 changed files with 222 additions and 8 deletions
+28
View File
@@ -69,6 +69,10 @@ m_project_properties_handler{this}
init();
QSettings settings;
//Read auto break conductor default from global settings
m_auto_break_conductor = settings.value(QStringLiteral("diagrameditor/auto_break_conductor"), false).toBool();
int size = settings.beginReadArray(QStringLiteral("diagrameditor/defaultguides"));
for (int i = 0; i < size; ++i) {
settings.setArrayIndex(i);
@@ -924,6 +928,28 @@ void QETProject::setAutoConductor(bool ac)
m_auto_conductor = ac;
}
/**
@brief QETProject::autoBreakConductor
@return true if use of auto break conductor is authorized.
See also Q_PROPERTY autoBreakConductor
*/
bool QETProject::autoBreakConductor() const
{
return m_auto_break_conductor;
}
/**
@brief QETProject::setAutoBreakConductor
@param abc
Enable the use of auto break conductor if true
See also Q_PROPERTY autoBreakConductor
*/
void QETProject::setAutoBreakConductor(bool abc)
{
if (abc != m_auto_break_conductor)
m_auto_break_conductor = abc;
}
/**
@brief QETProject::autoFolioNumberingNewFolios
emit Signal to add new Diagram with autonum
@@ -1732,6 +1758,7 @@ void QETProject::readDefaultPropertiesXml(QDomDocument &xml_project)
{
m_current_conductor_autonum = conds_autonums.attribute(QStringLiteral("current_autonum"));
m_freeze_new_conductors = conds_autonums.attribute(QStringLiteral("freeze_new_conductors")) == QLatin1String("true");
m_auto_break_conductor = conds_autonums.attribute(QStringLiteral("auto_break_conductors")) == QLatin1String("true");
for (auto elmt : QET::findInDomElement(conds_autonums, QStringLiteral("conductor_autonum")))
{
NumerotationContext nc;
@@ -1858,6 +1885,7 @@ void QETProject::writeDefaultPropertiesXml(QDomElement &xml_element)
QDomElement conductor_autonums = xml_document.createElement("conductors_autonums");
conductor_autonums.setAttribute("current_autonum", m_current_conductor_autonum);
conductor_autonums.setAttribute("freeze_new_conductors", m_freeze_new_conductors ? "true" : "false");
conductor_autonums.setAttribute("auto_break_conductors", m_auto_break_conductor ? "true" : "false");
foreach (QString key, conductorAutoNum().keys()) {
QDomElement conductor_autonum = conductorAutoNum(key).toXml(xml_document, "conductor_autonum");
if (key != "" && conductorAutoNumFormula(key) != "") {