split the selection panel into one card per kind of selection

This commit is contained in:
2026-08-07 18:38:55 +02:00
parent cc0ef856e3
commit 2289277e12
60 changed files with 3014 additions and 1559 deletions

View File

@@ -0,0 +1,28 @@
#pragma once
#include "entt/entity/entity.hpp"
#include "SelectionContent.h"
#include "SelectionContentFactory.h"
class ShipStatsPanel;
// The card for one selected ship (REQ-UI-SHIP-STATS-PANEL): its live hull stats and the
// summaries of the capability modules it carries, computed from what is actually
// installed (REQ-MOD-STAT-CALC). Applies to player and enemy ships alike
// (REQ-UI-ENTITY-CLICK-SELECT).
class ShipContent : public SelectionContent
{
Q_OBJECT
public:
ShipContent(const SelectionContext& context, const SelectionRequest& request,
QWidget* parent = nullptr);
protected:
void refreshRuntime() override;
private:
entt::entity m_entity;
ShipStatsPanel* m_statsPanel;
};