#pragma once #include #include #include #include #include #include #include class AssetBrowser : public QFrame { Q_OBJECT public: explicit AssetBrowser(QWidget* parent = nullptr); ~AssetBrowser(); void Rebuild(); void dragEnterEvent(QDragEnterEvent* event) override; void dropEvent(QDropEvent* event) override; public slots: void folderviewCustomContextMenu(const QPoint& point); void indexClicked(const QModelIndex& list); private: QGridLayout* m_mainLayout; QTreeView* m_foldertree; QFileSystemModel* m_model; QMenu* m_directoryMenu; QScrollArea* m_assetScrollArea; QFrame* m_assetContainer; QVBoxLayout* m_assetLayout; QString m_selectedDirectory; QString m_contextDirectory; QMenu* m_createAssetMenu, *m_generalAssetMenu; };