#pragma once #include #include "BuildingId.h" #include "SelectionContent.h" #include "SelectionContentFactory.h" // The count summary for several selected buildings that do not aggregate // (REQ-UI-MULTI-SELECTION, REQ-UI-SELECTION-AGGREGATE): how many of each type, and the // total building block cost of the selection. No per-building detail is shown. class MultiBuildingContent : public SelectionContent { Q_OBJECT public: MultiBuildingContent(const SelectionContext& context, const SelectionRequest& request, QWidget* parent = nullptr); protected: // The summary is fixed for a given selection -- how many of each type were selected, // and what they cost -- so it is built once and has nothing to keep current. A // building leaving the selection re-publishes it and rebuilds this card. void refreshRuntime() override {} private: void buildSummary(); std::vector m_ids; };