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.
This commit is contained in:
joshua
2025-03-12 21:48:18 +01:00
parent 2d89d70682
commit 2c1b840f9c
4 changed files with 22 additions and 62 deletions

View File

@@ -50,18 +50,18 @@ void TerminalStripLayoutPattern::setFont(const QFont &font) {
QETUtils::pixelSizedFont(m_font); QETUtils::pixelSizedFont(m_font);
} }
void TerminalStripLayoutPattern::setTerminalsTextAlignment(const QVector<Qt::Alignment> &alignment) void TerminalStripLayoutPattern::setTerminalsTextAlignment(const Qt::Alignment &alignment)
{ {
m_terminals_text_alignment = alignment; m_terminals_text_alignment = alignment;
updateTerminalsTextOption(); updateTerminalsTextOption();
} }
QVector<Qt::Alignment> TerminalStripLayoutPattern::terminalsTextAlignment() const Qt::Alignment TerminalStripLayoutPattern::terminalsTextAlignment() const
{ {
return m_terminals_text_alignment; return m_terminals_text_alignment;
} }
QVector<QTextOption> TerminalStripLayoutPattern::terminalsTextOption() const QTextOption TerminalStripLayoutPattern::terminalsTextOption() const
{ {
return m_terminals_text_option; return m_terminals_text_option;
} }
@@ -74,16 +74,6 @@ void TerminalStripLayoutPattern::updateHeaderTextOption()
void TerminalStripLayoutPattern::updateTerminalsTextOption() void TerminalStripLayoutPattern::updateTerminalsTextOption()
{ {
if (m_terminals_text_option.size() == m_terminals_text_option.setAlignment(m_terminals_text_alignment);
m_terminals_text_alignment.size()) m_terminals_text_option.setWrapMode(QTextOption::WordWrap);
{
for (auto i = 0 ; i<m_terminals_text_option.size() ; ++i)
{
m_terminals_text_option[i].setAlignment(m_terminals_text_alignment.at(i));
m_terminals_text_option[i].setWrapMode(QTextOption::WordWrap);
}
}
else {
qDebug() << "TerminalStripLayoutPattern::updateTerminalsTextOption() : Wrong vector size";
}
} }

View File

@@ -66,19 +66,13 @@ class TerminalStripLayoutPattern
QRect{0, 30, 20, 130} QRect{0, 30, 20, 130}
}; };
void setTerminalsTextAlignment(const QVector<Qt::Alignment> &alignment); //Terminal text
QVector<Qt::Alignment> terminalsTextAlignment() const; void setTerminalsTextAlignment(const Qt::Alignment &alignment);
QVector<QTextOption> terminalsTextOption() const; Qt::Alignment terminalsTextAlignment() const;
QTextOption terminalsTextOption() const;
int m_terminals_text_height{50}; int m_terminals_text_height{50};
int m_terminals_text_y{35}; int m_terminals_text_y{35};
Qt::Orientation m_terminals_text_orientation {Qt::Vertical};
QVector<Qt::Orientation> m_terminals_text_orientation
{
Qt::Vertical,
Qt::Vertical,
Qt::Vertical,
Qt::Vertical
};
int m_bridge_point_d{5}; int m_bridge_point_d{5};
QVector<int> m_bridge_point_y_offset{50,70,90,110}; QVector<int> m_bridge_point_y_offset{50,70,90,110};
@@ -95,20 +89,8 @@ class TerminalStripLayoutPattern
Qt::Alignment m_header_text_alignment{Qt::AlignCenter}; Qt::Alignment m_header_text_alignment{Qt::AlignCenter};
QTextOption m_header_text_option; QTextOption m_header_text_option;
QVector<Qt::Alignment> m_terminals_text_alignment Qt::Alignment m_terminals_text_alignment {Qt::AlignRight | Qt::AlignVCenter};
{ QTextOption m_terminals_text_option{QTextOption()};
Qt::AlignRight | Qt::AlignVCenter,
Qt::AlignRight | Qt::AlignVCenter,
Qt::AlignRight | Qt::AlignVCenter,
Qt::AlignRight | Qt::AlignVCenter
};
QVector<QTextOption> m_terminals_text_option
{
QTextOption(),
QTextOption(),
QTextOption(),
QTextOption()
};
}; };
#endif // TERMINALSTRIPLAYOUTPATTERN_H #endif // TERMINALSTRIPLAYOUTPATTERN_H

View File

@@ -162,7 +162,7 @@ void TerminalStripDrawer::paint(QPainter *painter)
//Draw text //Draw text
painter->save(); painter->save();
text_rect.setRect(0, terminals_text_y, terminal_rect.width(), terminals_text_height); 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->translate(text_rect.bottomLeft());
painter->rotate(270); painter->rotate(270);
@@ -172,7 +172,7 @@ void TerminalStripDrawer::paint(QPainter *painter)
const auto shared_real_terminal{real_terminal_vector[i]}; const auto shared_real_terminal{real_terminal_vector[i]};
painter->drawText(text_rect, painter->drawText(text_rect,
shared_real_terminal ? shared_real_terminal->label() : QLatin1String(), shared_real_terminal ? shared_real_terminal->label() : QLatin1String(),
terminals_text_option[index_]); terminals_text_option);
if (m_preview_draw) if (m_preview_draw)
{ {

View File

@@ -108,31 +108,19 @@ void TerminalStripLayoutEditor::valueEdited()
m_layout.data()->setHeaderTextAlignment(Qt::AlignRight | Qt::AlignVCenter); break; 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 ? m_layout.data()->m_terminals_text_orientation = ui->m_terminal_text_orientation_cb->currentIndex() == 0 ?
Qt::Horizontal : Qt::Horizontal :
Qt::Vertical; Qt::Vertical;
switch (ui->m_terminal_text_alignment_cb->currentIndex()) { switch (ui->m_terminal_text_alignment_cb->currentIndex()) {
case 0: case 0:
m_layout.data()->setTerminalsTextAlignment( m_layout.data()->setTerminalsTextAlignment(Qt::Alignment {Qt::AlignLeft | Qt::AlignVCenter});
QVector<Qt::Alignment> { Qt::AlignLeft | Qt::AlignVCenter,
Qt::AlignLeft | Qt::AlignVCenter,
Qt::AlignLeft | Qt::AlignVCenter,
Qt::AlignLeft | Qt::AlignVCenter });
break; break;
case 1: case 1:
m_layout.data()->setTerminalsTextAlignment( m_layout.data()->setTerminalsTextAlignment(Qt::Alignment { Qt::AlignHCenter | Qt::AlignVCenter});
QVector<Qt::Alignment> { Qt::AlignHCenter | Qt::AlignVCenter,
Qt::AlignHCenter | Qt::AlignVCenter,
Qt::AlignHCenter | Qt::AlignVCenter,
Qt::AlignHCenter | Qt::AlignVCenter });
break; break;
default: default:
m_layout.data()->setTerminalsTextAlignment( m_layout.data()->setTerminalsTextAlignment(Qt::Alignment { Qt::AlignRight | Qt::AlignVCenter});
QVector<Qt::Alignment> { Qt::AlignRight | Qt::AlignVCenter,
Qt::AlignRight | Qt::AlignVCenter,
Qt::AlignRight | Qt::AlignVCenter,
Qt::AlignRight | Qt::AlignVCenter });
break; break;
} }
@@ -197,7 +185,7 @@ void TerminalStripLayoutEditor::updateUi()
ui->m_header_text_orientation_cb->setCurrentIndex(1); 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); ui->m_terminal_text_orientation_cb->setCurrentIndex(0);
} else { } else {
ui->m_terminal_text_orientation_cb->setCurrentIndex(1); ui->m_terminal_text_orientation_cb->setCurrentIndex(1);
@@ -212,7 +200,7 @@ void TerminalStripLayoutEditor::updateUi()
ui->m_header_text_alignment_cb->setCurrentIndex(2); 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) { if (terminal_alignment &Qt::AlignLeft) {
ui->m_terminal_text_alignment_cb->setCurrentIndex(0); ui->m_terminal_text_alignment_cb->setCurrentIndex(0);
} else if (terminal_alignment &Qt::AlignHCenter) { } else if (terminal_alignment &Qt::AlignHCenter) {