Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Plugins/PlanOverlays/plan_overlays_plugin_interface.h
T

53 lines
1.1 KiB
C++
Executable File

#pragma once
#include <PluginInterfaces/topic_replay_interface.h>
#include <TopicEditorBase/topic_editor_interface.h>
#include <QJsonArray>
#include <QJsonObject>
namespace SituationMap
{
class ForeignGuiInterface;
}
namespace PlanOverlaysPlugin
{
class PlanOverlayModel;
class ForeignGuiInterface : public TopicReplay::Factory, public TopicEditorBase::Interface
{
public:
ForeignGuiInterface() = default;
virtual ~ForeignGuiInterface() = default;
static QString pluginName() { return QStringLiteral("PlanOverlaysGuiPlugin"); }
virtual void setForeignSitMapGuiIfc(SituationMap::ForeignGuiInterface *foreignSitMapIfc) = 0;
virtual void setForeignPlanOverlaysGuiIfc(ForeignGuiInterface *ifc) = 0;
virtual QWidget *openPlanOverlayDialog(const QJsonArray &planItems = QJsonArray(), bool removePlansOnClose = false) = 0;
virtual bool loadPlan(int planFileId, const QJsonObject &planItemObject) = 0;
virtual bool loadPlan(int planFileId) = 0;
virtual bool unloadAllPlans() = 0;
virtual PlanOverlayModel *planOverlayModel() = 0;
};
}