chore: no longer based on QMainWindow

Since most of the features that QMainWindow offered will never be
used in this program. We don't need a statusbar, a menubar, etc.
This commit is contained in:
Gary Wang
2020-12-29 23:28:17 +08:00
parent dc17e1d0b1
commit 3abc16d3ff
5 changed files with 66 additions and 17 deletions

23
app/framelesswindow.cpp Normal file
View File

@ -0,0 +1,23 @@
#include "framelesswindow.h"
#include <QVBoxLayout>
FramelessWindow::FramelessWindow(QWidget *parent)
: QWidget(parent)
, m_centralLayout(new QVBoxLayout(this))
{
this->setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint);
m_centralLayout->setMargin(0);
}
void FramelessWindow::setCentralWidget(QWidget *widget)
{
if (m_centralWidget) {
m_centralLayout->removeWidget(m_centralWidget);
m_centralWidget->deleteLater();
}
m_centralLayout->addWidget(widget);
m_centralWidget = widget;
}