初步实现放大功能

This commit is contained in:
tangchao0503
2025-11-11 15:30:57 +08:00
parent e7a73430d0
commit 83ef26a1e2
7 changed files with 263 additions and 145 deletions

View File

@ -0,0 +1,35 @@
#pragma once
#include <QDockWidget>
#include <QToolButton>
#include <QStyle>
#include <QHBoxLayout>
#include <QMainWindow>
#include <QMap>
#include <QSize>
#include <QLabel>
class CustomDockWidgetBase :
public QDockWidget
{
Q_OBJECT
public:
explicit CustomDockWidgetBase(QString title, QMainWindow* parent = nullptr);
explicit CustomDockWidgetBase(QMainWindow* parent = nullptr);
void setTile(QString title);
void hideMaxButton();
private slots:
void toggleMaximize();
private:
QMainWindow* m_mainWindow = nullptr;
QToolButton* m_maxButton = nullptr;
bool m_isMaximized = false;
QList<QDockWidget*> m_hiddenDocks;
QByteArray m_savedState;
QMap<QDockWidget*, QSize> m_originalSizes;
QLabel* title_label;
void initialize();
};