From 2c1b840f9c54eadf2cdb3f478e31c8cfe5bd998f Mon Sep 17 00:00:00 2001 From: joshua Date: Wed, 12 Mar 2025 21:48:18 +0100 Subject: [PATCH] Use same properties for every terminal level Initially it was planned to have separate text configuration for every terminal level. It's not useful, use same properties for every level is sufficient and visually more consistent. By consequent every QVector related to these properties was replaced by a single value. --- .../properties/terminalstriplayoutpattern.cpp | 20 +++--------- .../properties/terminalstriplayoutpattern.h | 32 ++++--------------- .../GraphicsItem/terminalstripdrawer.cpp | 4 +-- .../ui/terminalstriplayouteditor.cpp | 28 +++++----------- 4 files changed, 22 insertions(+), 62 deletions(-) diff --git a/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp b/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp index 19f0bfc4c..b6fba13e8 100644 --- a/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp +++ b/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp @@ -50,18 +50,18 @@ void TerminalStripLayoutPattern::setFont(const QFont &font) { QETUtils::pixelSizedFont(m_font); } -void TerminalStripLayoutPattern::setTerminalsTextAlignment(const QVector &alignment) +void TerminalStripLayoutPattern::setTerminalsTextAlignment(const Qt::Alignment &alignment) { m_terminals_text_alignment = alignment; updateTerminalsTextOption(); } -QVector TerminalStripLayoutPattern::terminalsTextAlignment() const +Qt::Alignment TerminalStripLayoutPattern::terminalsTextAlignment() const { return m_terminals_text_alignment; } -QVector TerminalStripLayoutPattern::terminalsTextOption() const +QTextOption TerminalStripLayoutPattern::terminalsTextOption() const { return m_terminals_text_option; } @@ -74,16 +74,6 @@ void TerminalStripLayoutPattern::updateHeaderTextOption() void TerminalStripLayoutPattern::updateTerminalsTextOption() { - if (m_terminals_text_option.size() == - m_terminals_text_alignment.size()) - { - for (auto i = 0 ; i &alignment); - QVector terminalsTextAlignment() const; - QVector terminalsTextOption() const; + //Terminal text + void setTerminalsTextAlignment(const Qt::Alignment &alignment); + Qt::Alignment terminalsTextAlignment() const; + QTextOption terminalsTextOption() const; int m_terminals_text_height{50}; int m_terminals_text_y{35}; - - QVector m_terminals_text_orientation - { - Qt::Vertical, - Qt::Vertical, - Qt::Vertical, - Qt::Vertical - }; + Qt::Orientation m_terminals_text_orientation {Qt::Vertical}; int m_bridge_point_d{5}; QVector m_bridge_point_y_offset{50,70,90,110}; @@ -95,20 +89,8 @@ class TerminalStripLayoutPattern Qt::Alignment m_header_text_alignment{Qt::AlignCenter}; QTextOption m_header_text_option; - QVector m_terminals_text_alignment - { - Qt::AlignRight | Qt::AlignVCenter, - Qt::AlignRight | Qt::AlignVCenter, - Qt::AlignRight | Qt::AlignVCenter, - Qt::AlignRight | Qt::AlignVCenter - }; - QVector m_terminals_text_option - { - QTextOption(), - QTextOption(), - QTextOption(), - QTextOption() - }; + Qt::Alignment m_terminals_text_alignment {Qt::AlignRight | Qt::AlignVCenter}; + QTextOption m_terminals_text_option{QTextOption()}; }; #endif // TERMINALSTRIPLAYOUTPATTERN_H diff --git a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp index 522073437..256665305 100644 --- a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp +++ b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp @@ -162,7 +162,7 @@ void TerminalStripDrawer::paint(QPainter *painter) //Draw text painter->save(); text_rect.setRect(0, terminals_text_y, terminal_rect.width(), terminals_text_height); - if (terminals_text_orientation[index_] == Qt::Vertical) + if (terminals_text_orientation == Qt::Vertical) { painter->translate(text_rect.bottomLeft()); painter->rotate(270); @@ -172,7 +172,7 @@ void TerminalStripDrawer::paint(QPainter *painter) const auto shared_real_terminal{real_terminal_vector[i]}; painter->drawText(text_rect, shared_real_terminal ? shared_real_terminal->label() : QLatin1String(), - terminals_text_option[index_]); + terminals_text_option); if (m_preview_draw) { diff --git a/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp b/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp index c630ed500..b54164f94 100644 --- a/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp +++ b/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp @@ -108,31 +108,19 @@ void TerminalStripLayoutEditor::valueEdited() m_layout.data()->setHeaderTextAlignment(Qt::AlignRight | Qt::AlignVCenter); break; } - m_layout.data()->m_terminals_text_orientation[0] = ui->m_terminal_text_orientation_cb->currentIndex() == 0 ? - Qt::Horizontal : - Qt::Vertical; + m_layout.data()->m_terminals_text_orientation = ui->m_terminal_text_orientation_cb->currentIndex() == 0 ? + Qt::Horizontal : + Qt::Vertical; switch (ui->m_terminal_text_alignment_cb->currentIndex()) { case 0: - m_layout.data()->setTerminalsTextAlignment( - QVector { Qt::AlignLeft | Qt::AlignVCenter, - Qt::AlignLeft | Qt::AlignVCenter, - Qt::AlignLeft | Qt::AlignVCenter, - Qt::AlignLeft | Qt::AlignVCenter }); + m_layout.data()->setTerminalsTextAlignment(Qt::Alignment {Qt::AlignLeft | Qt::AlignVCenter}); break; case 1: - m_layout.data()->setTerminalsTextAlignment( - QVector { Qt::AlignHCenter | Qt::AlignVCenter, - Qt::AlignHCenter | Qt::AlignVCenter, - Qt::AlignHCenter | Qt::AlignVCenter, - Qt::AlignHCenter | Qt::AlignVCenter }); + m_layout.data()->setTerminalsTextAlignment(Qt::Alignment { Qt::AlignHCenter | Qt::AlignVCenter}); break; default: - m_layout.data()->setTerminalsTextAlignment( - QVector { Qt::AlignRight | Qt::AlignVCenter, - Qt::AlignRight | Qt::AlignVCenter, - Qt::AlignRight | Qt::AlignVCenter, - Qt::AlignRight | Qt::AlignVCenter }); + m_layout.data()->setTerminalsTextAlignment(Qt::Alignment { Qt::AlignRight | Qt::AlignVCenter}); break; } @@ -197,7 +185,7 @@ void TerminalStripLayoutEditor::updateUi() ui->m_header_text_orientation_cb->setCurrentIndex(1); } - if (data->m_terminals_text_orientation[0] == Qt::Horizontal) { + if (data->m_terminals_text_orientation == Qt::Horizontal) { ui->m_terminal_text_orientation_cb->setCurrentIndex(0); } else { ui->m_terminal_text_orientation_cb->setCurrentIndex(1); @@ -212,7 +200,7 @@ void TerminalStripLayoutEditor::updateUi() ui->m_header_text_alignment_cb->setCurrentIndex(2); } - const auto terminal_alignment = data->terminalsTextAlignment().at(0); + const auto terminal_alignment = data->terminalsTextAlignment(); if (terminal_alignment &Qt::AlignLeft) { ui->m_terminal_text_alignment_cb->setCurrentIndex(0); } else if (terminal_alignment &Qt::AlignHCenter) {