File indexing completed on 2024-05-12 03:48:24

0001 /*
0002     File                 : PartMdiView.h
0003     Project              : LabPlot
0004     Description          : QMdiSubWindow wrapper for aspect views.
0005     --------------------------------------------------------------------
0006     SPDX-FileCopyrightText: 2013-2019 Alexander Semke <alexander.semke@web.de>
0007     SPDX-FileCopyrightText: 2007, 2008 Tilman Benkert <thzs@gmx.net>
0008     SPDX-FileCopyrightText: 2007, 2008 Knut Franke <knut.franke@gmx.de>
0009     SPDX-License-Identifier: GPL-2.0-or-later
0010 */
0011 
0012 #ifndef CONTENTDOCKWIDGET_H
0013 #define CONTENTDOCKWIDGET_H
0014 
0015 #include <DockWidget.h>
0016 
0017 class AbstractAspect;
0018 class AbstractPart;
0019 
0020 class ContentDockWidget : public ads::CDockWidget {
0021     Q_OBJECT
0022 
0023 public:
0024     explicit ContentDockWidget(AbstractPart*);
0025     ~ContentDockWidget() override;
0026     AbstractPart* part() const;
0027     void suppressDeletion(bool);
0028 
0029 private:
0030     AbstractPart* m_part;
0031     bool m_closing{false};
0032 
0033 private Q_SLOTS:
0034     void handleAspectDescriptionChanged(const AbstractAspect*);
0035     void handleAspectAboutToBeRemoved(const AbstractAspect*);
0036     void slotWindowStateChanged(Qt::WindowStates oldState, Qt::WindowStates newState);
0037 };
0038 
0039 #endif // ifndef CONTENTDOCKWIDGET_H