56 lines
1.4 KiB
C++
Executable File
56 lines
1.4 KiB
C++
Executable File
#pragma once
|
|
|
|
#include <LtsMultiMonitor/lts_multi_monitor_export.h>
|
|
|
|
#include <QWidget>
|
|
|
|
|
|
class QEvent;
|
|
|
|
|
|
namespace LtsMultiMonitor
|
|
{
|
|
|
|
class LTSMULTIMONITOR_EXPORT SecondaryWidget : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
SecondaryWidget() = default;
|
|
virtual ~SecondaryWidget() = default;
|
|
};
|
|
|
|
/**
|
|
* @brief The FullscreenVideoDummyWidget class provides a widget which obtains a whole screen in the MMM.
|
|
* A foreign application's window can be placed on this position. If the dummy widget gets
|
|
* replaced by another widget of the OpApp, then the FullscreenVideoDummyWidget gets destroyed and the
|
|
* foreign application's window *must* be closed.
|
|
* Do not destroy the FullscreenVideoDummyWidget yourself unless you want to free the screen space in the
|
|
* MMM again.
|
|
*
|
|
* Listen to signalWidgetPlaced and set your foreign application's window to globalGeometry.
|
|
* Listen to destroyed to close your foreign application's window as that window was replaced
|
|
* by the MMM.
|
|
*
|
|
* Does not work in tablet mode.
|
|
*/
|
|
class LTSMULTIMONITOR_EXPORT FullscreenVideoDummyWidget : public SecondaryWidget
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
FullscreenVideoDummyWidget();
|
|
|
|
void hideVideo();
|
|
void showVideo();
|
|
|
|
protected:
|
|
bool event(QEvent *);
|
|
|
|
signals:
|
|
void signalWidgetPlaced(const QRect &globalGeometry);
|
|
void signalHideVideo();
|
|
void signalShowVideo();
|
|
};
|
|
|
|
} // namespace LtsMultiMonitor
|