mirror of
https://gitee.com/vnotex/vnote.git
synced 2025-07-06 06:19:52 +08:00

* Use ViewWindow's status widget to show message; * Add markdown guide; * Add shortcut for StayOnTop;
45 lines
1.1 KiB
C++
45 lines
1.1 KiB
C++
#include "statuswidget.h"
|
|
|
|
#include <QTimer>
|
|
#include <QLabel>
|
|
#include <QHBoxLayout>
|
|
|
|
using namespace vnotex;
|
|
|
|
StatusWidget::StatusWidget(QWidget *p_parent)
|
|
: QWidget(p_parent)
|
|
{
|
|
auto layout = new QHBoxLayout(this);
|
|
layout->setContentsMargins(0, 0, 0, 0);
|
|
layout->setSpacing(0);
|
|
|
|
m_messageLabel = new QLabel(this);
|
|
m_messageLabel->setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
|
|
layout->addWidget(m_messageLabel);
|
|
|
|
m_messageTimer = new QTimer(this);
|
|
m_messageTimer->setSingleShot(true);
|
|
connect(m_messageTimer, &QTimer::timeout,
|
|
m_messageLabel, &QLabel::clear);
|
|
}
|
|
|
|
StatusWidget::~StatusWidget()
|
|
{
|
|
if (m_editorWidget) {
|
|
m_editorWidget->setParent(nullptr);
|
|
}
|
|
}
|
|
|
|
void StatusWidget::showMessage(const QString &p_msg, int p_milliseconds)
|
|
{
|
|
m_messageLabel->setText(p_msg);
|
|
m_messageTimer->start(p_milliseconds);
|
|
}
|
|
|
|
void StatusWidget::setEditorStatusWidget(const QSharedPointer<QWidget> &p_editorWidget)
|
|
{
|
|
Q_ASSERT(!m_editorWidget);
|
|
m_editorWidget = p_editorWidget;
|
|
layout()->addWidget(m_editorWidget.data());
|
|
}
|