CCIMXDesktop
 
Loading...
Searching...
No Matches
FileNameProviders.h
1#ifndef FILENAMEPROVIDERS_H
2#define FILENAMEPROVIDERS_H
3#include "FileInfoProvider.h"
4#include <QColor>
5#include <QMap>
6
8public:
20 ~FileNameProviders() override = default;
25 inline QString provide_section_name() override {
26 return "FileName";
27 }
35 std::pair<bool, QVariant> data(const QModelIndex& index, int role) override;
36 using FileExtension = QString;
37 using ColorPairs = std::pair<FileExtension, QColor>;
38
43 void registerColorPairs(const ColorPairs& pairs);
49 void inline register_special_dircolor(const QColor& t) {
50 dirent_color = t;
51 }
52
53private:
54 std::pair<bool, QVariant>
55 handle_extension_color(const QModelIndex& index);
56 QMap<FileExtension, QColor> mappings;
57 QColor dirent_color { Qt::darkMagenta };
58};
59
60#endif // FILENAMEPROVIDERS_H
The CCIMXFileSystemModel class Extends QFileSystemModel to support additional information providers....
Definition CCIMXFileSystemModel.h:13
The FileInfoProvider class is such an abstract class that using in CCIMXFileSystemModel to provide th...
Definition FileInfoProvider.h:15
CCIMXFileSystemModel * models
binding models
Definition FileInfoProvider.h:75
Definition FileNameProviders.h:7
Q_DISABLE_COPY(FileNameProviders)
disable copy
QString provide_section_name() override
provide_section_name means everything in the name lol
Definition FileNameProviders.h:25
QString FileExtension
file extension defines
Definition FileNameProviders.h:36
std::pair< bool, QVariant > data(const QModelIndex &index, int role) override
data provide the data to the views
Definition FileNameProviders.cpp:6
void register_special_dircolor(const QColor &t)
register_special_dircolor register the special dirent color
Definition FileNameProviders.h:49
void registerColorPairs(const ColorPairs &pairs)
registerColorPairs assigned the color shows
Definition FileNameProviders.cpp:16
std::pair< FileExtension, QColor > ColorPairs
color pairs
Definition FileNameProviders.h:37