Speed up opening big projects with lazy folios

This commit is contained in:
Laurent Trinques
2026-10-13 11:01:21 +02:00
parent a78e95be2c
commit 77e2a9bfc5
45 changed files with 3956 additions and 388 deletions
+20 -2
View File
@@ -770,6 +770,15 @@ bool QET::compareCanonicalFilePaths(const QString &first, const QString &second)
@return false if an error occurred, true otherwise
*/
bool QET::writeXmlFile(QDomDocument &xml_doc, const QString &filepath, QString *error_message)
{
return writeXmlText(xml_doc.toString(4), filepath, error_message);
}
/**
@brief QET::writeXmlText
writeXmlFile() for a document already written as @p text
*/
bool QET::writeXmlText(const QString &text, const QString &filepath, QString *error_message)
{
QSaveFile file(filepath);
@@ -789,7 +798,7 @@ bool QET::writeXmlFile(QDomDocument &xml_doc, const QString &filepath, QString *
QTextStream out(&file);
out.setEncoding(QStringConverter::Utf8);
out.setGenerateByteOrderMark(false);
out << xml_doc.toString(4);
out << text;
if (!file.commit())
{
if (error_message) {
@@ -895,6 +904,15 @@ QActionGroup *QET::depthActionGroup(QObject *parent)
}
bool QET::writeToFile(QDomDocument &xml_doc, QFile *file, QString *error_message)
{
return writeTextToFile(xml_doc.toString(4), file, error_message);
}
/**
@brief QET::writeTextToFile
writeToFile() for a document already written as @p text
*/
bool QET::writeTextToFile(const QString &text, QFile *file, QString *error_message)
{
bool opened_here = file->isOpen() ? false : true;
@@ -920,7 +938,7 @@ bool QET::writeToFile(QDomDocument &xml_doc, QFile *file, QString *error_message
out.seek(0);
out.setEncoding(QStringConverter::Utf8);
out.setGenerateByteOrderMark(false);
out << xml_doc.toString(4);
out << text;
if (opened_here) {
file->close();
}