#pragma once #include #include #include #include #include "../TargetPackageWidget.hpp" #include "PinWidget.hpp" #include "BodyWidget.hpp" #include "src/Targets/TargetVariant.hpp" namespace Bloom::Widgets::InsightTargetWidgets::Qfp { /** * QuadFlatPackageWidget implements a custom Qt widget for Quad-flat package variants. */ class QuadFlatPackageWidget: public TargetPackageWidget { Q_OBJECT public: QuadFlatPackageWidget( const Targets::TargetVariant& targetVariant, InsightWorker& insightWorker, QWidget* parent ); private: QVBoxLayout* layout = nullptr; QHBoxLayout* horizontalLayout = nullptr; QHBoxLayout* topPinLayout = nullptr; QVBoxLayout* rightPinLayout = nullptr; QHBoxLayout* bottomPinLayout = nullptr; QVBoxLayout* leftPinLayout = nullptr; BodyWidget* bodyWidget = nullptr; std::vector pinWidgets; }; }