swift
statusmessageform.cpp
1 // SPDX-FileCopyrightText: Copyright (C) 2014 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
6 #include <QLabel>
7 #include <QLineEdit>
8 #include <QPlainTextEdit>
9 #include <QString>
10 
11 #include "ui_statusmessageform.h"
12 
13 #include "misc/logpattern.h"
14 
15 using namespace swift::misc;
16 
17 namespace swift::gui::components
18 {
19  CStatusMessageForm::CStatusMessageForm(QWidget *parent) : QFrame(parent), ui(new Ui::CStatusMessageForm)
20  {
21  ui->setupUi(this);
22  }
23 
25 
26  void CStatusMessageForm::setVariant(const CVariant &messageVariant)
27  {
28  if (!this->isVisible()) { return; }
29  this->setValue(messageVariant.value<CStatusMessage>());
30  }
31 
33  {
34  ui->te_Message->setPlainText(message.getMessage());
35  ui->lbl_SeverityIcon->setPixmap(CIcon(message.toIcon()));
36  const QString hrc(CLogPattern::humanReadableNamesFrom(message).join(", "));
37  if (hrc.isEmpty())
38  {
39  ui->le_Categories->setText(message.getCategories().toQString());
40  ui->le_Categories->setToolTip("");
41  }
42  else
43  {
44  ui->le_Categories->setText(hrc);
45  ui->le_Categories->setToolTip(message.getCategories().toQString());
46  }
47  ui->le_Severity->setText(message.getSeverityAsString());
48  ui->le_Timestamp->setText(message.getFormattedUtcTimestampYmdhms());
49  }
50 
52  {
53  ui->le_Timestamp->clear();
54  ui->le_Categories->clear();
55  ui->le_Severity->clear();
56  }
57 
58  void CStatusMessageForm::toggleVisibility() { this->setVisible(!isVisible()); }
59 
61  {
62  ui->le_Timestamp->setVisible(!reduced);
63  ui->lbl_Timestamp->setVisible(!reduced);
64  ui->le_Categories->setVisible(!reduced);
65  ui->lbl_Categories->setVisible(!reduced);
66  ui->le_Severity->setVisible(!reduced);
67  ui->lbl_SeverityIcon->setVisible(!reduced);
68  ui->lbl_Severity->setVisible(!reduced);
69  }
70 } // namespace swift::gui::components
Display details about a single status message.
void setReducedInfo(bool reduced)
Minimize by hiding status ...
void setValue(const swift::misc::CStatusMessage &message)
Set message.
void setVariant(const swift::misc::CVariant &messageVariant)
Set message.
Value object for icons. An icon is stored in the global icon repository and identified by its index....
Definition: icon.h:39
QString toQString(bool i18n=false) const
Cast as QString.
Streamable status message, e.g.
const QString & getSeverityAsString() const
Severity as string.
QString getMessage() const
Message.
const CLogCategoryList & getCategories() const
Message categories.
CIcons::IconIndex toIcon() const
Representing icon.
Wrapper around QVariant which provides transparent access to CValueObject methods of the contained ob...
Definition: variant.h:66
T value() const
Return the value converted to the type T.
Definition: variant.h:169
QString getFormattedUtcTimestampYmdhms() const
As yyyy MM dd HH mm ss.
High level reusable GUI components.
Definition: aboutdialog.cpp:13
Free functions in swift::misc.