DYTSrouce/src/ui/DockWidget.h

44 lines
910 B
C
Raw Normal View History

2025-01-04 04:12:51 +00:00
#pragma once
#include <QDockWidget>
#include <QPushButton>
#include <QLabel>
#include <QTimer>
class DockWidgetTitleBar : public QWidget {
Q_OBJECT
public:
DockWidgetTitleBar(QWidget* parent);
~DockWidgetTitleBar() override;
virtual void SetTitle(const QString& title) {}
QSize sizeHint() const override {
return minimumSizeHint();
}
QSize minimumSizeHint() const override;
2025-01-19 17:08:04 +00:00
Q_SIGNALS:
void signalClose();
2025-01-04 04:12:51 +00:00
};
class DockWidget : public QDockWidget {
Q_OBJECT
public:
DockWidget(const QString& title, QWidget* parent = nullptr);
DockWidget(QWidget* parent = 0);
~DockWidget() override;
void setWindowTitle(const QString& text);
void SetDockWidgetTitleBar(DockWidgetTitleBar* titleBar);
protected:
void showEvent(QShowEvent* e) override;
void resizeEvent(QResizeEvent* e) override;
private:
DockWidgetTitleBar* titleBar_{ nullptr };
};