FemaLocalSoftware/incedentwidget.cpp
lopata29435_NSK 3af06d02ec finish
2025-01-08 05:13:48 +07:00

60 lines
2.0 KiB
C++

#include "incedentwidget.h"
IncedentWidget::IncedentWidget(const QString &time,
const QString &log,
const QString &sender,
const QString &section,
const QString &status,
QWidget *parent)
: QWidget(parent)
{
setAttribute(Qt::WA_StyledBackground);
// Устанавливаем обводку для ВСЕГО виджета
setStyleSheet(R"(
QWidget {
border: 1px solid #E5E7EB;
background-color: transparent;
}
)");
// Горизонтальный layout
QHBoxLayout *mainLayout = new QHBoxLayout(this);
mainLayout->setSpacing(70); // Отступы между элементами
mainLayout->setContentsMargins(25, 5, 25, 5); // Внутренние отступы
setLayout(mainLayout);
// Создаем лейблы
timeLabel = createLabel(time, 100, 230);
logLabel = createLabel(log, 100, 250);
senderLabel = createLabel(sender, 100, 220);
sectionLabel = createLabel(section, 100, 100);
statusLabel = createLabel(status, 100, 120);
// Добавляем лейблы в layout
mainLayout->addWidget(timeLabel);
mainLayout->addWidget(logLabel);
mainLayout->addWidget(senderLabel);
mainLayout->addWidget(sectionLabel);
mainLayout->addWidget(statusLabel);
}
QLabel *IncedentWidget::createLabel(const QString &text, int minSize, int maxSize)
{
QLabel *label = new QLabel(text);
label->setAlignment(Qt::AlignLeft);
label->setWordWrap(true);
label->setMinimumWidth(minSize);
label->setMaximumWidth(maxSize);
label->setFixedHeight(50);
label->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
label->setStyleSheet(R"(
background: transparent;
font-family: Inter;
font-size: 20px;
font-weight: 400;
color: #13385F;
border: none;
)");
return label;
}