#include "gtl_gui_config_widget_player_files.h" namespace gtl { namespace gui { namespace config { widget_player_files::widget_player_files(QObject *parent) : QFileSystemModel(parent) { } widget_player_files::~widget_player_files() { } int widget_player_files::columnCount(const QModelIndex &parent /* = QModelIndex() */) const { return /*QFileSystemModel::columnCount(parent) + 1*/3; } QVariant widget_player_files::data(const QModelIndex &index, int role /*= Qt::DisplayRole*/) const { QString value; if (role == Qt::DisplayRole) { if (index.column() == 2) { QFileInfo info = fileInfo(index); if (info.isFile()) return QVariant(info.lastModified()); else return ""; } } else if (role == Qt::ToolTipRole) { //QString str_info; //QVariant value; QFileInfo info = fileInfo(index); if (info.suffix().toLower() == "gtr") { gtl::hw::player_file_gtr file(NULL, filePath(index)); value = file.info(); } else if (info.suffix().toLower() == "wav") { gtl::hw::player_file_wav file(NULL, filePath(index)); value = file.info(); } //value = "1234"; //return value; return value; } //return data; return QFileSystemModel::data(index, role); } QVariant widget_player_files::headerData(int section, Qt::Orientation orientation, int role /*= Qt::DisplayRole*/) const { if (role == Qt::DisplayRole) { if (orientation == Qt::Orientation::Horizontal) { if (section == 0) return tr("name"); else if (section == 1) return tr("size"); else if (section == 2) return tr("date modified"); else if (section == 3) return tr("info"); // else // return ""; } } return QFileSystemModel::headerData(section, orientation, role); } } } }