#ifndef FILEMANAGEWIDGET_H #define FILEMANAGEWIDGET_H #include #include namespace Ui { class FileManageWidget; } class FileManageWidget : public QWidget { Q_OBJECT public: explicit FileManageWidget(QWidget *parent = 0); ~FileManageWidget(); enum FilterType { JobFile, Image, Font, All }; protected: virtual bool eventFilter(QObject *watched, QEvent *event) override; private slots: void onFilterCBoxSelectChanged(int i); void onExportBtnClicked(); void onImportBtnClicked(); void onSelectAllBtnClicked(); void onCancelAllBtnClicked(); void onDelSelectedBtnClicked(); void updateUDiskDevList(); private: int updateFileListView(QListWidget* listView); void copyFiles(QListWidget* from, QListWidget* to); Ui::FileManageWidget *ui; int m_currFilterType; QListWidget* m_focusedListView = nullptr; // 用于文件显示列表中,存放每个文件名对应的绝对路径所用的数据键 static constexpr int AbsPathRole = Qt::UserRole + 1; }; #endif // FILEMANAGEWIDGET_H