Adds initial intermediate qt6 porting state
This commit is contained in:
11247 files changed
+1891537
No files matched your search
Executable
+120
@@ -0,0 +1,120 @@
|
||||
|
||||
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AudioVideoManagement/logger.h>
|
||||
#include <AudioVideoManagement/Shared/playback_app.h>
|
||||
#include <PluginInterfaces/topic_replay_interface.h>
|
||||
|
||||
#include <QString>
|
||||
#include <QRect>
|
||||
#include <QVector>
|
||||
#include <QWidget>
|
||||
#include <boost/optional.hpp>
|
||||
#include <memory>
|
||||
#include <AudioVideoManagement/ava_control.h>
|
||||
#include <AudioVideoManagement/ava_session.h>
|
||||
|
||||
|
||||
namespace AudioVideoManagement
|
||||
{
|
||||
enum class AvaStreamType;
|
||||
|
||||
|
||||
|
||||
class ScreenPlacementHelper : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
ScreenPlacementHelper(QWidget *parent = nullptr)
|
||||
: QWidget(parent)
|
||||
{
|
||||
setWindowTitle(QStringLiteral("Topic Replay Screen Placement Helper"));
|
||||
|
||||
|
||||
|
||||
|
||||
setWindowFlags(Qt::FramelessWindowHint);
|
||||
setAttribute(Qt::WA_TranslucentBackground);
|
||||
|
||||
activateWindow();
|
||||
show();
|
||||
}
|
||||
|
||||
protected:
|
||||
void moveEvent(QMoveEvent *) override
|
||||
{
|
||||
emitNewGeometry();
|
||||
}
|
||||
|
||||
void resizeEvent(QResizeEvent *) override
|
||||
{
|
||||
emitNewGeometry();
|
||||
}
|
||||
|
||||
void emitNewGeometry()
|
||||
{
|
||||
|
||||
emit widgetPlaced(geometry());
|
||||
}
|
||||
|
||||
signals:
|
||||
void widgetPlaced(const QRect &geometry);
|
||||
};
|
||||
|
||||
|
||||
class DataInterface;
|
||||
class AvaControl;
|
||||
class VdControl;
|
||||
struct AvaScriptEntry;
|
||||
|
||||
|
||||
class TopicReplay final : public QObject, public ::TopicReplay::Interface
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TopicReplay(DataInterface *dataIfc, bool isAudio);
|
||||
~TopicReplay();
|
||||
|
||||
|
||||
|
||||
QWidget *createWidget() override;
|
||||
|
||||
|
||||
bool playbackInit(const QJsonObject &attributes) override;
|
||||
bool playbackStart(int secondsOffset) override;
|
||||
bool playbackPause() override;
|
||||
bool playbackStop() override;
|
||||
|
||||
bool exportTopic(const QJsonObject &attributes,
|
||||
const QString &folderPath,
|
||||
TopicEditorBase::ExportNotifier *pExportNotifier) override;
|
||||
|
||||
private slots:
|
||||
void onWidgetPlaced(const QRect &geometry);
|
||||
void avScriptFinished(const QString &exportDir, AvaStreamType streamType, bool success);
|
||||
void slotSetScriptResponse(const AvaStreamInfo &, AvaStreamState);
|
||||
|
||||
private:
|
||||
AvaControl* getAvaControl();
|
||||
VdControl* getVdControl();
|
||||
|
||||
|
||||
class ExportScript;
|
||||
|
||||
const bool m_isAudio;
|
||||
PlaybackAppHandle m_appHandle;
|
||||
DataInterface *m_dataIfc;
|
||||
QString m_scriptName;
|
||||
bool m_isPlaying{false};
|
||||
QScopedPointer<ScreenPlacementHelper> m_screenPlacementHelper;
|
||||
boost::optional<QRect> m_dialogGeometry;
|
||||
QScopedPointer<ExportScript> m_exportScript;
|
||||
LOGGER_T m_logger;
|
||||
QJsonObject m_playbackAttributes;
|
||||
};
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user