Added multiple breakpoints feature and their key bindings
[clinton/Virtual-Jaguar-Rx.git] / src / gui / filelistmodel.h
CommitLineData
cf76e892
JPM
1//
2// filelistmodel.h: Class definition
3//
4// by James Hammons
5// (C) 2010 Underground Software
6//
7
8#ifndef __FILELISTMODEL_H__
9#define __FILELISTMODEL_H__
10
11#include <QtWidgets>
12#include <vector>
13#include <stdint.h>
14
15struct FileListData
16{
17// FileListData(unsigned long ul=0, QString str="", QImage img=QImage()): dbIndex(ul), filename(str), label(img) {}
18// FileListData(unsigned long ul=0, QString str, QImage img): dbIndex(ul), filename(str), label(img) {}
19
20 unsigned long dbIndex;
21 unsigned long fileSize;
22 QString filename;
23 QImage label;
24 bool hasUniversalHeader;
25 uint32_t fileType;
26 uint32_t crc;
27};
28
29//hm.
30#define FLM_INDEX (Qt::UserRole + 1)
31#define FLM_FILESIZE (Qt::UserRole + 2)
32#define FLM_FILENAME (Qt::UserRole + 3)
33#define FLM_LABEL (Qt::UserRole + 4)
34#define FLM_UNIVERSALHDR (Qt::UserRole + 5)
35#define FLM_FILETYPE (Qt::UserRole + 6)
36#define FLM_CRC (Qt::UserRole + 7)
37
38class FileListModel: public QAbstractListModel
39{
40 public:
41 FileListModel(QObject * parent = 0);
42
43 int rowCount(const QModelIndex & parent = QModelIndex()) const;
44 QVariant data(const QModelIndex & index, int role) const;
45 QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
46
47// void AddData(QIcon pix);
48// void AddData(unsigned long);
49 void AddData(unsigned long, QString, QImage, unsigned long);
50 void AddData(unsigned long, QString, QImage, unsigned long, bool, uint32_t, uint32_t);
51 void ClearData(void);
52
53// FileListData GetData(const QModelIndex & index) const;
54
55 private:
56 std::vector<FileListData> list;
57};
58
59#endif // __FILELISTMODEL_H__