From baa20d69b7ba61bfac3df8265409f1cd2c0ee064 Mon Sep 17 00:00:00 2001 From: "G.K.MacGregor" Date: Fri, 2 Feb 2024 16:34:34 +0000 Subject: [PATCH] Really simplify refresh signalling Amendment to a468032, where refresh signal was not taken out of row loops. --- levelonecommands.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/levelonecommands.cpp b/levelonecommands.cpp index 29c6600..f782d69 100644 --- a/levelonecommands.cpp +++ b/levelonecommands.cpp @@ -381,8 +381,9 @@ void CutCommand::redo() for (int r=m_selectionTopRow; r<=m_selectionBottomRow; r++) { for (int c=m_selectionLeftColumn; c<=m_selectionRightColumn; c++) m_teletextDocument->currentSubPage()->setCharacter(r, c, 0x20); - emit m_teletextDocument->contentsChanged(); } + + emit m_teletextDocument->contentsChanged(); } void CutCommand::undo() @@ -397,10 +398,11 @@ void CutCommand::undo() for (int c=m_selectionLeftColumn; c<=m_selectionRightColumn; c++) m_teletextDocument->currentSubPage()->setCharacter(r, c, m_deletedCharacters[arrayR].at(arrayC++)); - emit m_teletextDocument->contentsChanged(); arrayR++; } + emit m_teletextDocument->contentsChanged(); + m_teletextDocument->setSelectionCorner(m_selectionCornerRow, m_selectionCornerColumn); m_teletextDocument->moveCursor(m_row, m_column, true); } @@ -635,9 +637,6 @@ void PasteCommand::redo() } } - if (r < 25) - emit m_teletextDocument->contentsChanged(); - arrayR++; // If paste area is taller than clipboard data, repeat the pattern // if it wasn't plain text @@ -649,6 +648,8 @@ void PasteCommand::redo() } } + emit m_teletextDocument->contentsChanged(); + if (m_selectionActive) { m_teletextDocument->setSelectionCorner(m_selectionCornerRow, m_selectionCornerColumn); m_teletextDocument->moveCursor(m_row, m_column, true); @@ -678,12 +679,11 @@ void PasteCommand::undo() arrayC++; } - if (r < 25) - emit m_teletextDocument->contentsChanged(); - arrayR++; } + emit m_teletextDocument->contentsChanged(); + if (!m_selectionActive) m_teletextDocument->moveCursor(m_row, m_column); }