57 lines
1.9 KiB
C++
57 lines
1.9 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;
|
||
|
}
|