r24923 by jghali - Refactor PageItem_TextFrame::setTextFrameHeight() to avoid some useless processing
scribus-commit
scribus-commit at lists.scribus.net
Sun Feb 6 22:18:27 UTC 2022
Author: jghali
Date: Sun Feb 6 22:18:26 2022
New Revision: 24923
URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=24923
Log:
Refactor PageItem_TextFrame::setTextFrameHeight() to avoid some useless processing
Modified:
branches/Version15x/Scribus/scribus/pageitem_textframe.cpp
Modified: branches/Version15x/Scribus/scribus/pageitem_textframe.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=24923&path=/branches/Version15x/Scribus/scribus/pageitem_textframe.cpp
==============================================================================
--- branches/Version15x/Scribus/scribus/pageitem_textframe.cpp (original)
+++ branches/Version15x/Scribus/scribus/pageitem_textframe.cpp Sun Feb 6 22:18:26 2022
@@ -5845,33 +5845,33 @@
if (textLayout.lines() <= 0)
return;
- if (m_nextBox == nullptr) // Vertical alignment is not used inside a text chain
- {
- textLayout.box()->moveTo(textLayout.box()->x(), 0);
- double newHeight = textLayout.box()->naturalHeight();
- newHeight += m_textDistanceMargins.bottom();
-
- UndoTransaction undoTransaction;
- if (UndoManager::undoEnabled())
- {
- QString unitSuffix = unitGetStrFromIndex(m_Doc->unitIndex());
- int unitPrecision = unitGetPrecisionFromIndex(m_Doc->unitIndex());
- double unitRatio = m_Doc->unitRatio();
- QString owString = QString::number(oldWidth * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
- QString ohString = QString::number(oldHeight * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
- QString nwString = QString::number(m_width * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
- QString nhString = QString::number(m_height * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
- QString tooltip = QString(Um::ResizeFromTo).arg(owString, ohString, nwString, nhString);
- undoTransaction = undoManager->beginTransaction(Um::Selection, Um::ITextFrame, Um::Resize, tooltip, Um::IResize);
- }
-
- setHeight(newHeight);
-
- if (undoTransaction)
- undoTransaction.commit();
- }
-
+ if (m_nextBox != nullptr) // Vertical alignment is not used inside a text chain
+ return;
+
+ textLayout.box()->moveTo(textLayout.box()->x(), 0);
+ double newHeight = textLayout.box()->naturalHeight();
+ newHeight += m_textDistanceMargins.bottom();
+
+ UndoTransaction undoTransaction;
+ if (UndoManager::undoEnabled())
+ {
+ QString unitSuffix = unitGetStrFromIndex(m_Doc->unitIndex());
+ int unitPrecision = unitGetPrecisionFromIndex(m_Doc->unitIndex());
+ double unitRatio = m_Doc->unitRatio();
+ QString owString = QString::number(oldWidth * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
+ QString ohString = QString::number(oldHeight * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
+ QString nwString = QString::number(m_width * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
+ QString nhString = QString::number(m_height * unitRatio, 'f', unitPrecision) + " " + unitSuffix;
+ QString tooltip = QString(Um::ResizeFromTo).arg(owString, ohString, nwString, nhString);
+ undoTransaction = undoManager->beginTransaction(Um::Selection, Um::ITextFrame, Um::Resize, tooltip, Um::IResize);
+ }
+
+ setHeight(newHeight);
updateClip();
+
+ if (undoTransaction)
+ undoTransaction.commit();
+
invalid = true;
m_Doc->changed();
m_Doc->regionsChanged()->update(QRect());
More information about the scribus-commit
mailing list