Files
qt5-legatus-legacy/Lts/Common/LtsMultiMonitor/lts_screen_normal.h
T
2026-08-13 18:33:10 +02:00

59 lines
1.5 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; // only works for BLWs
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;
//LtsScreenBase::WidgetType m_widgetType { LtsScreenBase::WidgetType::None };
void swapLeftRight();
bool tryPutDummyUnmanaged(QWidget *widget);
signals:
void signalMakeAllSwole(); // =>
void signalMakeSwole(); // <=
private slots:
void slotOverlayDestroyed();
void setCornerIcons();
};
} // namespace LtsMultiMonitor