diff --git a/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp b/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp index f0b8801c9..19f0bfc4c 100644 --- a/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp +++ b/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.cpp @@ -16,10 +16,12 @@ along with QElectroTech. If not, see . */ #include "terminalstriplayoutpattern.h" +#include "../../../utils/qetutils.h" #include TerminalStripLayoutPattern::TerminalStripLayoutPattern() { + m_font.setPixelSize(15); updateHeaderTextOption(); updateTerminalsTextOption(); } @@ -39,6 +41,15 @@ QTextOption TerminalStripLayoutPattern::headerTextOption() const { return m_header_text_option; } +QFont TerminalStripLayoutPattern::font() const { + return m_font; +} + +void TerminalStripLayoutPattern::setFont(const QFont &font) { + m_font = font; + QETUtils::pixelSizedFont(m_font); +} + void TerminalStripLayoutPattern::setTerminalsTextAlignment(const QVector &alignment) { m_terminals_text_alignment = alignment; diff --git a/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.h b/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.h index ac8aac7e1..96ebaeb14 100644 --- a/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.h +++ b/sources/TerminalStrip/GraphicsItem/properties/terminalstriplayoutpattern.h @@ -18,6 +18,7 @@ #ifndef TERMINALSTRIPLAYOUTPATTERN_H #define TERMINALSTRIPLAYOUTPATTERN_H +#include #include #include #include @@ -52,6 +53,10 @@ class TerminalStripLayoutPattern //Spacer between the header and the terminals QRect m_spacer_rect{0, 50, 10, 90}; + //Font + QFont font() const; + void setFont (const QFont &font); + //Terminals QVector m_terminal_rect { @@ -90,7 +95,8 @@ class TerminalStripLayoutPattern void updateHeaderTextOption(); void updateTerminalsTextOption(); - private: + private: + QFont m_font; Qt::Alignment m_header_text_alignment{Qt::AlignCenter}; QTextOption m_header_text_option; diff --git a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp index 57db4b70f..b0f16493f 100644 --- a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp +++ b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp @@ -56,6 +56,8 @@ void TerminalStripDrawer::paint(QPainter *painter) auto brush_ = painter->brush(); brush_.setColor(Qt::white); + painter->setFont(m_pattern->font()); + painter->setPen(pen_); painter->setBrush(brush_); diff --git a/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp b/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp index 11e0b239f..630d672fc 100644 --- a/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp +++ b/sources/TerminalStrip/ui/terminalstriplayouteditor.cpp @@ -15,9 +15,12 @@ You should have received a copy of the GNU General Public License along with QElectroTech. If not, see . */ +#include + #include "terminalstriplayouteditor.h" #include "ui_terminalstriplayouteditor.h" #include "../GraphicsItem/properties/terminalstriplayoutpattern.h" +#include "../../utils/qetutils.h" TerminalStripLayoutEditor::TerminalStripLayoutEditor(QSharedPointer layout, QWidget *parent) : @@ -54,8 +57,6 @@ void TerminalStripLayoutEditor::valueEdited() return; } - //auto *data_ = m_layout.data(); - m_layout.data()->m_header_rect.setRect(0, ui->m_y_header_sb->value(), ui->m_width_header_sb->value(), @@ -91,6 +92,10 @@ void TerminalStripLayoutEditor::valueEdited() m_layout.data()->m_bridge_point_y_offset[2] = ui->m_bridge_point_2_sb->value(); m_layout.data()->m_bridge_point_y_offset[3] = ui->m_bridge_point_3_sb->value(); + auto font_ = ui->m_font_cb->currentFont(); + font_.setPixelSize(ui->m_font_size_sb->value()); + m_layout->setFont(font_); + m_layout.data()->m_header_text_orientation = ui->m_header_text_orientation_cb->currentIndex() == 0 ? Qt::Horizontal : Qt::Vertical; @@ -180,6 +185,10 @@ void TerminalStripLayoutEditor::updateUi() ui->m_bridge_point_2_sb->setValue(bridge_point[2]); ui->m_bridge_point_3_sb->setValue(bridge_point[3]); + const auto font = m_layout->font(); + ui->m_font_size_sb->setValue(font.pixelSize()); + ui->m_font_cb->setCurrentFont(font); + if (data->m_header_text_orientation == Qt::Horizontal) { ui->m_header_text_orientation_cb->setCurrentIndex(0); } else { @@ -225,4 +234,3 @@ void TerminalStripLayoutEditor::on_m_display_preview_help_clicked(bool checked) m_preview_strip_item.m_drawer.setPreviewDraw(checked); m_preview_strip_item.update(); } - diff --git a/sources/TerminalStrip/ui/terminalstriplayouteditor.h b/sources/TerminalStrip/ui/terminalstriplayouteditor.h index d4daea579..ec048ca23 100644 --- a/sources/TerminalStrip/ui/terminalstriplayouteditor.h +++ b/sources/TerminalStrip/ui/terminalstriplayouteditor.h @@ -76,7 +76,6 @@ class TerminalStripLayoutEditor : public QWidget private slots: void valueEdited(); - void on_m_display_preview_help_clicked(bool checked); private: diff --git a/sources/TerminalStrip/ui/terminalstriplayouteditor.ui b/sources/TerminalStrip/ui/terminalstriplayouteditor.ui index eca92386e..1d5b73ba6 100644 --- a/sources/TerminalStrip/ui/terminalstriplayouteditor.ui +++ b/sources/TerminalStrip/ui/terminalstriplayouteditor.ui @@ -6,8 +6,8 @@ 0 0 - 767 - 544 + 892 + 555 @@ -15,57 +15,26 @@ - QLayout::SetMaximumSize + QLayout::SizeConstraint::SetMaximumSize - - - - Borne niveau 0 : + + + + 1000 - - - - En tête : + + + + 1000 - Qt::Horizontal - - - - - - - - - - Point de pont - - - - - - - 1000 - - - - - - - Qt::Horizontal - - - - - - - 1000 + Qt::Orientation::Horizontal @@ -76,15 +45,43 @@ - - - - Afficher l'aide + + + + 1000 - - + + + + 1000 + + + + + + + Borne niveau 0 : + + + + + + + 1000 + + + + + + + 1000 + + + + + 1000 @@ -97,22 +94,39 @@ - - + + + + + 1000 - - + + - Largeur + Borne niveau 3 : - - + + + + Borne niveau 2 : + + + + + + + 1000 + + + + + 1000 @@ -125,17 +139,45 @@ - - + + - Hauteur + Afficher l'aide - - + + - Prévisualisation : + Largeur + + + + + + + 1000 + + + + + + + Espace : + + + + + + + Qt::Orientation::Horizontal + + + + + + + 1000 @@ -146,35 +188,14 @@ - - - - 1000 + + + + Borne niveau 1 : - - - - 1000 - - - - - - - 1000 - - - - - - - 1000 - - - - + @@ -189,26 +210,56 @@ 0 - - + + - Gauche + Horizontal - Centre - - - - - Droite + Vertical - + + + + Orientation du texte d'en tête : + + + + + + + + Horizontal + + + + + Vertical + + + + + + + + Alignement du texte d'en tête : + + + + + + + Orientation du texte de borne : + + + + @@ -227,65 +278,111 @@ - - - - Alignement du texte d'en tête : - + + + + + Gauche + + + + + Centre + + + + + Droite + + - + Alignement du texte de borne : - - - - - Horizontal + + + + + 0 - - - - Vertical + + 0 - - - - - - - - Horizontal + + 0 - - - - Vertical + + 0 - - - - - - - Orientation du texte de borne : - - - - - - - Orientation du texte d'en tête : - + + + + Police : + + + + + + + + + + Taille : + + + + + + + 1 + + + + + + + Qt::Orientation::Horizontal + + + + 40 + 20 + + + + + + + + + 1000 + + + + + + + 1000 + + + + + + + En tête : + + + @@ -293,34 +390,6 @@ - - - - Borne niveau 2 : - - - - - - - 1000 - - - - - - - Espace : - - - - - - - 1000 - - - @@ -328,66 +397,52 @@ - - - - 1000 - - - - - - - 1000 - - - - - - - 1000 - - - - - - - 1000 - - - - - - - 1000 - - - - - - - Borne niveau 3 : - - - - - - - 1000 - - - - - - - Borne niveau 1 : - - - - - + + - Qt::Horizontal + Qt::Orientation::Horizontal + + + + + + + 1000 + + + + + + + 1000 + + + + + + + Hauteur + + + + + + + Point de pont + + + + + + + 1000 + + + + + + + Prévisualisation : @@ -811,6 +866,38 @@ + + m_font_cb + currentFontChanged(QFont) + TerminalStripLayoutEditor + valueEdited() + + + 245 + 276 + + + 445 + 277 + + + + + m_font_size_sb + valueChanged(int) + TerminalStripLayoutEditor + valueEdited() + + + 507 + 277 + + + 445 + 277 + + + valueEdited()