18 #include <QAbstractScrollArea>
24 const int xpos_offset = 40;
25 const int ypos_offset = 40;
30 , m_warning_header(
"Houston, we have a problem.")
33 , m_clear_just_had_happened(false)
81 m_area->installEventFilter(
this);
91 if (event->type() == QEvent::Resize)
94 return QObject::eventFilter(obj, event);
110 int x =
m_area->width() - xpos_offset;
111 int y =
m_area->height() - ypos_offset;
113 if (QAbstractScrollArea* scrollArea =
dynamic_cast<QAbstractScrollArea*
>(
m_area)) {
115 if (QScrollBar* horizontal = scrollArea->horizontalScrollBar()) {
116 if (horizontal->isVisible())
117 y -= horizontal->height();
120 if (QScrollBar* vertical = scrollArea->verticalScrollBar()) {
121 if (vertical->isVisible())
122 x -= vertical->width();
Defines the macro ASSERT.
#define ASSERT(condition)
Defines class WarningSign.
QString m_warning_message
WarningSign(QWidget *parent)
WarningSignWidget * m_warningWidget
void setWarningHeader(const QString &warningHeader)
QPoint positionForWarningSign() const
void setArea(QWidget *area)
void clear()
Clears warning message;.
bool eventFilter(QObject *obj, QEvent *event)
void setWarningMessage(const QString &warningMessage)
Shows warning sign on the screen.
void updateLabelGeometry()
bool m_clear_just_had_happened