doctypelistview.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #pragma once
  2. #include <QWidget>
  3. #include <QMap>
  4. #include <QString>
  5. #include <QMenu>
  6. #include "ui_doctypelistview.h"
  7. class DocTypeListView : public QWidget
  8. {
  9. Q_OBJECT
  10. public:
  11. DocTypeListView(QWidget *parent = Q_NULLPTR);
  12. virtual ~DocTypeListView();
  13. static void initSupportFileTypes();
  14. static bool isSupportExt(QString ext);
  15. static bool isHexExt(QString ext);
  16. static QMap<QString,bool> * s_supportFileExts;
  17. //记录常见的16进制文件的结尾
  18. static QMap<QString,bool> * s_binFileExts;
  19. protected:
  20. void save();
  21. private slots:
  22. void slot_curRowChanged(int row);
  23. void slot_customContextMenuRequested(const QPoint& pos);
  24. void slot_addCustomType();
  25. void slot_add();
  26. void slot_sub();
  27. void slot_customListItemClicked(QListWidgetItem* item);
  28. void slot_typListItemClicked(QListWidgetItem* item);
  29. private:
  30. Ui::DocTypeListView ui;
  31. static QStringList s_supportFileExt;
  32. static QStringList s_extBindFileType;
  33. QMenu *m_menu;
  34. bool m_isDirty; //是否修改过
  35. };