#pragma once #include #include #include "SchematicChoiceOption.h" struct RecipesConfig; class BuildingIconCache; class ItemIconCache; class SchematicChoiceDialog : public QDialog { Q_OBJECT public: // The icon caches draw the recipe lines of the "Unlocks recipes" list // (REQ-DEF-SCHEMATIC-DROP, REQ-UI-ITEM-ICON, REQ-UI-BUILD-ICON). Not owned. SchematicChoiceDialog(const std::vector& options, const RecipesConfig& recipes, ItemIconCache* itemIcons, BuildingIconCache* buildingIcons, QWidget* parent = nullptr); int getChosenIndex() const; private: void onOptionClicked(int index); int m_chosenIndex; };