Files
qt5-legatus-legacy/Lts/Plugins/ProjectDataManagement/pdm_gui_plugin_interface.h
T
2026-08-13 18:33:10 +02:00

67 lines
2.6 KiB
C++
Executable File

/**
* @RDE_HEADER@
* HMI Plugin for ProjectDataManagement (Interface for access from other Plugins)
* $Id$
* $HeadURL$
* $Author$
* Created by Patric Karwat, SLSE, 2016-09-12
*/
#pragma once
#include <QSet>
#include <functional>
#include <ProjectDataManagement/pdm_enums.hpp>
class QComboBox;
class QWidget;
class QVariant;
namespace ProjectDataManagement
{
class ForeignGuiInterface
{
public:
ForeignGuiInterface() = default;
virtual ~ForeignGuiInterface() = default;
virtual bool fillBComboBox(QComboBox *cbx) = 0;
virtual bool fillCComboBox(QComboBox *cbx) = 0;
virtual bool fillNComboBox(QComboBox *cbx) = 0;
virtual bool fillArtilleryComboBox(QComboBox *cbx) = 0;
virtual bool fillMortarComboBox(QComboBox *cbx) = 0;
virtual bool fillSingleMineComboBox(QComboBox *cbx) = 0;
virtual bool fillMineFieldComboBox(QComboBox *cbx) = 0;
virtual bool fillBoobyTrapComboBox(QComboBox *cbx) = 0;
virtual bool fillOffRouteMineComboBox(QComboBox *cbx) = 0;
virtual bool fillFunctionalAreaComboBox(QComboBox *cbx) = 0;
virtual bool fillAirSupportComboBox(QComboBox *cbx) = 0;
virtual bool setChargeTypePropertyFilter(QComboBox *cbx, const QString &property, const QVariant &value) = 0;
virtual bool fillPlayerLanguageComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerOperationModeComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerModeHelmetComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerModeVestComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerPersonalProtectionComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerProtectionLevelComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerHandgrenadeSearchModeComboBox(QComboBox *cbx) = 0;
virtual bool fillPlayerInternationalModeComboBox(QComboBox *cbx) = 0;
virtual bool fillABCProtectionComboBox(QComboBox *cbx) = 0;
virtual void fillIgniterComboBox(QComboBox *cbx, int chargeTypeId) = 0;
virtual void fillIgniterFunctionComboBox(QComboBox *cbx, int chargeTypeId, int igniterTypeId) = 0;
virtual void fillLoadComboBox(QComboBox *cbx, int chargeTypeId) = 0;
virtual void fillTargetTypeComboBox(QComboBox *cbx) = 0;
virtual void fillTargetSubTypeComboBox(QComboBox *cbx, int targetTypeId) = 0;
virtual void fillFirePurposeComboBox(QComboBox *cbx) = 0;
// virtual bool fillMobileVideoSystemComboBox(QComboBox *cbx) = 0;
virtual void chargeSelector(const QSet<int> &preselectedCharges,
GearClass gearClass,
const std::function<void(const QSet<int>&)> &cb,
QWidget *parent) = 0;
};
} // namespace ProjectDataManagement