Files
qt6-migration-pipeline/Lts/Common/LtsMultiMonitor/lts_screen_wide.h
T

52 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 LTSMULTIMONITOR_EXPORT LtsScreenWide : public LtsScreenBase
{
Q_OBJECT
public:
LtsScreenWide(const QRect &screenGeo, int screenId, bool debugMargins, const QString &serial);
int screenType() const override { return 1; }
LtsScreenContainer *containerOfWidget(QWidget *widget) noexcept(false) override;
bool isEmpty() const override;
LtsScreenContainer *childLeft() const { return m_childContainerLeft; }
LtsScreenContainer *childRight() const { return m_childContainerRight; }
LtsScreenContainer *childMain() const { return m_childContainerMain; }
void putWidgetUnmanagedMain(QWidget *widget);
void putWidgetUnmanagedLeft(QWidget *widget);
void putWidgetUnmanagedRight(QWidget *widget);
bool isIrreplaceable() const override;
bool hasWidget(QWidget *widget) const override;
LtsScreenContainer *putWidget(QWidget *widget, int screenPart) noexcept(false) override;
int containerIdOfWidget(QWidget *widget) const noexcept(false) override;
public slots:
void check() override;
private:
LtsScreenContainer *m_childContainerMain;
LtsScreenContainer *m_childContainerLeft;
LtsScreenContainer *m_childContainerRight;
QSplitter *m_splitter;
void swapLeftRight();
};
}