59 lines
1.4 KiB
C++
Executable File
59 lines
1.4 KiB
C++
Executable File
#pragma once
|
|
|
|
#include "lts_screen_base.h"
|
|
|
|
#include <LtsMultiMonitor/lts_multi_monitor_export.h>
|
|
|
|
#include <QWidget>
|
|
#include <QRect>
|
|
|
|
|
|
class QSplitter;
|
|
class QHBoxLayout;
|
|
|
|
|
|
namespace LtsMultiMonitor
|
|
{
|
|
class LtsMagicCorner;
|
|
|
|
|
|
class LTSMULTIMONITOR_EXPORT LtsScreenNormal : public LtsScreenBase
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
LtsScreenNormal(QRect screenGeo, int screenId, bool debugMargins, const QString &serial);
|
|
~LtsScreenNormal();
|
|
int screenType() const override { return 0; }
|
|
int containerIdOfWidget(QWidget *widget) const noexcept(false) override;
|
|
LtsScreenContainer *child() const { return m_childContainer; }
|
|
LtsScreenContainer *putWidget(QWidget *widget, int) noexcept(false) override;
|
|
LtsScreenContainer *containerOfWidget(QWidget *widget) noexcept(false) override;
|
|
void hideMagicCorner(bool hide);
|
|
bool isEmpty() const override;
|
|
bool isIrreplaceable() const override;
|
|
void putWidgetUnmanaged(QWidget *widget);
|
|
bool hasWidget(QWidget *widget) const override;
|
|
void switchToTemp(WidgetType widgetType) override;
|
|
void finalizeSwitch() override;
|
|
void revertSwitch() override;
|
|
void check() override;
|
|
|
|
private:
|
|
LtsScreenContainer *m_childContainer { nullptr };
|
|
LtsMagicCorner *m_corner;
|
|
|
|
|
|
void swapLeftRight();
|
|
bool tryPutDummyUnmanaged(QWidget *widget);
|
|
|
|
signals:
|
|
void signalMakeAllSwole();
|
|
void signalMakeSwole();
|
|
|
|
private slots:
|
|
void slotOverlayDestroyed();
|
|
void setCornerIcons();
|
|
};
|
|
}
|