97 lines
3.3 KiB
C++
Executable File
97 lines
3.3 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* FileManagement - Rename Folder Dialog
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Iuliana Ojog, SLSE, 2017-05-22
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "tln_view_gui_plugin.h"
|
|
|
|
#include <LtsWidgets/lts_dialog.h>
|
|
#include <LtsSession/lts_session.h>
|
|
#include <LtsTimelineClassic/Event.h>
|
|
#include <Plugins/AudioVideoManagement/avm_menu_edit_gui_plugin_interface.h>
|
|
#include <Plugins/MarkerManagement/mrk_gui_plugin_interface.h>
|
|
#include <Plugins/FilterManagement/flt_participant_plugin_interface.h>
|
|
#include <Plugins/FilterManagement/flt_aes_plugin_interface.h>
|
|
#include <Plugins/FilterManagement/flt_building_cmpnt_plugin_interface.h>
|
|
#include <MarkerManagement/mrk_dtc.h>
|
|
|
|
|
|
namespace Ui
|
|
{
|
|
class ShowDetailsDialog;
|
|
}
|
|
|
|
namespace AudioVideoManagement
|
|
{
|
|
class StreamNameMapping;
|
|
}
|
|
|
|
namespace Timeline
|
|
{
|
|
class DetailData;
|
|
|
|
class ShowDetailsDialog : public LtsWidgets::LtsDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit ShowDetailsDialog(QWidget *parent = nullptr);
|
|
~ShowDetailsDialog();
|
|
|
|
bool init(DetailData *detailData, const LtsTimelineClassic::Event *event,
|
|
const QPointer<LtsSession::LtsSession> &session,
|
|
const QPointer<LtsSession::LtsSession> &replayAppSession,
|
|
const std::shared_ptr<AudioVideoManagement::ForeignMenuEditGuiInterface> &avmIfc,
|
|
const std::shared_ptr<MarkerManagement::ForeignGuiInterface> &mrkIfc,
|
|
const std::shared_ptr<FilterManagement::ForeignFltParticipantGuiInterface> &fltParticipantIfc,
|
|
const std::shared_ptr<FilterManagement::ForeignAesGuiInterface> &fltAesIfc,
|
|
const std::shared_ptr<FilterManagement::ForeignFltBuildingComponentGuiInterface> &fltBuildingComponentIfc,
|
|
bool isTimelineApp,
|
|
QWidget *pseudoParent,
|
|
AudioVideoManagement::StreamNameMapping *streamNameMapping);
|
|
|
|
void retranslate() override;
|
|
|
|
private slots:
|
|
void slotStartReplay();
|
|
void slotStartPlayback();
|
|
void slotShowMarker();
|
|
void slotFocusOnMap();
|
|
void updateMarker();
|
|
|
|
private:
|
|
bool hasNameAndEndTime() const;
|
|
bool getStreamNameAndEndTime(QString &streamName, qint64 &endTime, bool silent = false) const;
|
|
void setButtonDisabled(QPushButton *button, QToolButton *warningButton, const QString &reasonMessage, bool hide = false);
|
|
bool isMarkerAudioVideo() const;
|
|
static bool isAvsCapable(const LtsTimelineClassic::Event *event);
|
|
static bool isHitEventType(int eventTypeId);
|
|
static bool isAvEventType(int eventTypeId);
|
|
static bool isAudioEventType(int eventTypeId);
|
|
|
|
QString m_eventType;
|
|
Ui::ShowDetailsDialog *m_ui{nullptr};
|
|
const LtsTimelineClassic::Event *m_event{nullptr};
|
|
|
|
// everything from replay app:
|
|
QPointer<LtsSession::LtsSession> m_replayAppSession;
|
|
// end
|
|
|
|
std::shared_ptr<AudioVideoManagement::ForeignMenuEditGuiInterface> m_avmIfc;
|
|
std::shared_ptr<MarkerManagement::ForeignGuiInterface> m_mrkIfc;
|
|
std::shared_ptr<FilterManagement::ForeignFltParticipantGuiInterface> m_fltParticipantIfc;
|
|
std::shared_ptr<FilterManagement::ForeignAesGuiInterface> m_fltAesIfc;
|
|
std::shared_ptr<FilterManagement::ForeignFltBuildingComponentGuiInterface> m_fltBuildingComponentIfc;
|
|
AudioVideoManagement::StreamNameMapping *m_streamNameMapping{nullptr};
|
|
std::shared_ptr<MarkerManagement::Interface::Dtc> m_mrkDtc;
|
|
LtsSession::LtsSessionDataDds *m_session{nullptr};
|
|
NGL::INGLLogger &m_logger;
|
|
};
|
|
} // namespace Timeline
|