Revamp terminalStrip feature code

Move RealTerminal class in a new file
Move PhysicalTerminal class in a new file.
Remove the use of QWeakPointer and use instead QSharedPointer
in a big part of the revamp.
This commit is contained in:
joshua
2021-12-26 17:26:00 +01:00
parent 2ea9f8a2c6
commit 5709f469fc
13 changed files with 844 additions and 799 deletions

View File

@@ -18,7 +18,7 @@
#include "bridgeterminalscommand.h"
BridgeTerminalsCommand::BridgeTerminalsCommand(TerminalStrip *strip,
QVector<QWeakPointer<RealTerminal>> real_terminal,
QVector<QSharedPointer<RealTerminal>> real_terminal,
QUndoCommand *parent):
QUndoCommand(parent),
m_strip(strip),
@@ -42,7 +42,7 @@ void BridgeTerminalsCommand::redo()
}
UnBridgeTerminalsCommand::UnBridgeTerminalsCommand(TerminalStrip *strip,
QVector<QWeakPointer<RealTerminal>> real_terminal,
QVector<QSharedPointer<RealTerminal>> real_terminal,
QUndoCommand *parent):
QUndoCommand(parent),
m_strip(strip)
@@ -52,14 +52,14 @@ UnBridgeTerminalsCommand::UnBridgeTerminalsCommand(TerminalStrip *strip,
if (strip->canUnBridge(real_terminal))
{
m_terminals = real_terminal;
m_bridge = strip->bridgeFor(real_terminal.first());
m_bridge = strip->isBridged(real_terminal.first());
}
}
void UnBridgeTerminalsCommand::undo()
{
if (m_strip && m_bridge) {
m_strip->setBridge(m_bridge.toStrongRef(), m_terminals);
m_strip->setBridge(m_bridge, m_terminals);
}
}