#pragma once #include #include #include #include #include "diskitem.h" class GridView : public QWidget { Q_OBJECT public: explicit GridView(QWidget *parent = nullptr); void setDisks(const QVector &newDisks); protected: void resizeEvent(QResizeEvent *) override; signals: void diskSelected(const QString &diskName); private: QString searchQuery; QScrollArea *scrollArea; QWidget *gridContainer; QGridLayout *gridLayout; QPushButton *selectedButton; QString bgColor, borderColor, hoverColor, selectedColor; QList disks; void extracted(const QVector &filteredApps, int &cols, int &row, int &col); void populateGrid(); };