#ifndef GENERICBINARYFILEWIDGET_H #define GENERICBINARYFILEWIDGET_H #include #include #include #include namespace Ui { class genericBinaryFileWidget; } typedef enum {Type_SREC,Type_Bin,Type_Elf}FileTypeEnum; class FileListElement { public: FileListElement() {} FileListElement(QString fileName,bool isOpened,FileTypeEnum FileType,abstractBinFileWidget* viewer=0,abstractBinFile* parser=0) :fileName(fileName),isOpened(isOpened),FileType(FileType),viewer(viewer),parser(parser){} QString type() { switch (this->FileType) { case Type_SREC: return "Srec"; break; case Type_Bin: return "Binary"; break; case Type_Elf: return "Elf"; break; default: return "Unknow"; break; } } QString fileName; bool isOpened; FileTypeEnum FileType; abstractBinFileWidget* viewer; abstractBinFile* parser; }; class genericBinaryFileWidget : public QWidget { Q_OBJECT public: explicit genericBinaryFileWidget(QWidget *parent = 0); ~genericBinaryFileWidget(); public slots: void openFile(); void openFile(const QStringList& FileList); void updateFileList(); void removeFiles(); void fileCellActivated(int row, int column); private: Ui::genericBinaryFileWidget *ui; QList files; }; #endif // GENERICBINARYFILEWIDGET_H