Files
HPPA/HPPA/View3DModelManager.h
2026-04-02 10:34:57 +08:00

41 lines
825 B
C++

#pragma once
#include <QObject>
#include <QStackedWidget>
#include <QCoreApplication>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include "View3D.h"
class View3DPlantPhenotype;
class View3DLinearStage;
class View3DModelManager : public QWidget
{
Q_OBJECT
public:
enum class ScenarioType {
PlantPhenotype,
OneMotor
};
explicit View3DModelManager(QWidget* parent = nullptr);
void switchScenario(ScenarioType type);
View3DPlantPhenotype* m_viewPlant = nullptr;
View3DLinearStage* m_viewMotor = nullptr;
signals:
void scenarioChanged(ScenarioType type);
void created3DModelPlantPhenotype();
void created3DModelOneMotor();
private:
void ensurePlantPhenotypeView();
void ensureOneMotorView();
private:
QStackedWidget* m_stackedWidget = nullptr;
};