Spec-Zone.ru › Qt 5.6

Класс QDirModel

Класс QDirModel предоставляет модель данных для локальной файловой системы. Подробнее...

Заголовок: #include <QDirModel>
qmake: QT += widgets
Наследует: QAbstractItemModel

Этот класс устарел. Он предоставляется для обеспечения работы старого исходного кода. Мы настоятельно рекомендуем не использовать его в новом коде.

  • Список всех членов, включая унаследованные

Типы

Перечисление Roles { FileIconRole, FilePathRole, FileNameRole }

Свойства

  • lazyChildCount : bool
  • readOnly : bool
  • resolveSymlinks : bool
  • 1 свойство унаследовано от QObject

Публичные функции

QDirModel(const QStringList &nameFilters, QDir::Filters filters, QDir::SortFlags sort, QObject *parent = Q_NULLPTR)
QDirModel(QObject *parent = Q_NULLPTR)
~QDirModel()
QIcon fileIcon(const QModelIndex &index) const
QFileInfo fileInfo(const QModelIndex &index) const
QString fileName(const QModelIndex &index) const
QString filePath(const QModelIndex &index) const
QDir::Filters filter() const
QFileIconProvider * iconProvider() const
QModelIndex index(const QString &path, int column = 0) const
bool isDir(const QModelIndex &index) const
bool isReadOnly() const
bool lazyChildCount() const
QModelIndex mkdir(const QModelIndex &parent, const QString &name)
QStringList nameFilters() const
bool remove(const QModelIndex &index)
bool resolveSymlinks() const
bool rmdir(const QModelIndex &index)
void setFilter(QDir::Filters filters)
void setIconProvider(QFileIconProvider *provider)
void setLazyChildCount(bool enable)
void setNameFilters(const QStringList &filters)
void setReadOnly(bool enable)
void setResolveSymlinks(bool enable)
void setSorting(QDir::SortFlags sort)
QDir::SortFlags sorting() const

Переопределённые публичные функции

virtual int columnCount(const QModelIndex &parent = QModelIndex()) const
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const
virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
virtual Qt::ItemFlags flags(const QModelIndex &index) const
virtual bool hasChildren(const QModelIndex &parent = QModelIndex()) const
virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const
virtual QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const
virtual QMimeData * mimeData(const QModelIndexList &indexes) const
virtual QStringList mimeTypes() const
virtual QModelIndex parent(const QModelIndex &child) const
virtual int rowCount(const QModelIndex &parent = QModelIndex()) const
virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole)
virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder)
virtual Qt::DropActions supportedDropActions() const
  • 39 публичных функций унаследовано от QAbstractItemModel
  • 31 публичных функций унаследовано от QObject

Публичные слоты

void refresh(const QModelIndex &parent = QModelIndex())
  • 2 публичных слота унаследовано от QAbstractItemModel
  • 1 публичный слот унаследовано от QObject

Дополнительные унаследованные члены

  • 18 сигналов унаследовано от QAbstractItemModel
  • 2 сигнала унаследовано от QObject
  • 11 статических публичных членов унаследовано от QObject
  • 19 защищённых функций унаследовано от QAbstractItemModel
  • 9 защищённых функций унаследовано от QObject
  • 1 защищённый слот унаследовано от QAbstractItemModel

Подробное описание

Класс QDirModel предоставляет модель данных для локальной файловой системы.

Использование QDirModel больше не рекомендуется. Класс QFileSystemModel — более производительная альтернатива.

Этот класс предоставляет доступ к локальной файловой системе, предоставляя функции для переименования и удаления файлов и каталогов, а также для создания новых каталогов. В простейшем случае он может использоваться с подходящим виджетом отображения в рамках браузера или файлового менеджера.

QDirModel хранит кэш с информацией о файлах. Кэш необходимо обновлять с помощью refresh().

QDirModel можно использовать, используя стандартный интерфейс, предоставляемый QAbstractItemModel, но также предоставляет некоторые удобные функции, специфичные для модели каталогов. Функции fileInfo() и isDir() предоставляют информацию об исходных файлах и каталогах, связанных с элементами в модели.

Каталоги можно создавать и удалять с помощью mkdir(), rmdir(), и модель автоматически обновится, чтобы учесть изменения.

Примечание: QDirModel требует экземпляра QApplication.

См. также nameFilters(), setFilter(), filter(), QListView, QTreeView, QFileSystemModel, Пример Dir View и Классы модели.

Документация по типам членов

enum QDirModel::Roles

Константа Значение
QDirModel::FileIconRole Qt::DecorationRole
QDirModel::FilePathRole Qt::UserRole + 1
QDirModel::FileNameRole ?

Документация по свойствам

lazyChildCount : bool

Это свойство указывает, оптимизирует ли модель каталога функцию hasChildren для проверки только того, является ли элемент каталогом.

Если это свойство установлено в false, модель каталога будет проверять, содержит ли каталог файлы, прежде чем сообщать, что он содержит подкаталоги. В противном случае модель каталога будет сообщать, что элемент содержит подкаталоги, если элемент является каталогом.

Это свойство установлено в false по умолчанию

Функции доступа:

bool lazyChildCount() const
void setLazyChildCount(bool enable)

readOnly : bool

Это свойство указывает, разрешает ли модель каталога запись в файловую систему

Если это свойство установлено в false, модель каталога разрешит переименование, копирование и удаление файлов и каталогов.

Это свойство установлено в true по умолчанию

Функции доступа:

bool isReadOnly() const
void setReadOnly(bool enable)

resolveSymlinks : bool

Это свойство указывает, должна ли модель каталога разрешать символические ссылки

Это актуально только на операционных системах, поддерживающих символические ссылки.

Функции доступа:

bool resolveSymlinks() const
void setResolveSymlinks(bool enable)

Документация по функциям-членам

QDirModel::QDirModel(const QStringList &nameFilters, QDir::Filters filters, QDir::SortFlags sort, QObject *parent = Q_NULLPTR)

Создает новую модель каталога с заданным parent. В модель включаются только те файлы, которые соответствуют nameFilters и filters. Порядок сортировки задаётся флагами sort.

QDirModel::QDirModel(QObject *parent = Q_NULLPTR)

Создаёт модель каталога с указанным parent.

QDirModel::~QDirModel()

Уничтожает эту модель каталога.

[virtual] int QDirModel::columnCount(const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::columnCount().

Возвращает количество столбцов в элементе модели parent.

[virtual] QVariant QDirModel::data(const QModelIndex &index, int role = Qt::DisplayRole) const

Переопределено из QAbstractItemModel::data().

Возвращает данные для элемента модели index с заданным role.

См. также setData().

[virtual] bool QDirModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)

Переопределено из QAbstractItemModel::dropMimeData().

Обрабатывает data, предоставленные операцией перетаскивания, которая завершилась указанным action над строкой в модели, указанной row, column и индексом parent.

Возвращает true, если перетаскивание прошло успешно, и false в противном случае.

См. также supportedDropActions().

QIcon QDirModel::fileIcon(const QModelIndex &index) const

Возвращает значки для элемента, хранящегося в модели по указанному index.

QFileInfo QDirModel::fileInfo(const QModelIndex &index) const

Возвращает информацию о файле для указанного индекса модели index.

Примечание: Если индекс модели представляет символическую ссылку в подлежащей файловой системе, информация о файле, возвращаемая, будет содержать информацию о самой символической ссылке, независимо от того, включено ли resolveSymlinks или нет.

См. также QFileInfo::symLinkTarget().

QString QDirModel::fileName(const QModelIndex &index) const

Возвращает имя элемента, хранящегося в модели по указанному index.

QString QDirModel::filePath(const QModelIndex &index) const

Возвращает путь к элементу, хранящемуся в модели по указанному index.

QDir::Filters QDirModel::filter() const

Возвращает спецификацию фильтра для модели каталога.

См. также setFilter() и QDir::Filters.

[virtual] Qt::ItemFlags QDirModel::flags(const QModelIndex &index) const

Переопределено из QAbstractItemModel::flags().

Возвращает флаги элемента для данного index в модели.

См. также Qt::ItemFlags.

[virtual] bool QDirModel::hasChildren(const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::hasChildren().

Возвращает true, если элемент модели parent имеет подкаталоги; в противном случае возвращает false.

[virtual] QVariant QDirModel::headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const

Переопределено из QAbstractItemModel::headerData().

Возвращает данные, хранящиеся под указанным role для заданного section заголовка с заданной orientation.

QFileIconProvider *QDirModel::iconProvider() const

Возвращает поставщик значков файлов для этой модели каталога.

См. также setIconProvider().

[virtual] QModelIndex QDirModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::index().

Возвращает индекс элемента модели для элемента в parent с заданным row и column.

QModelIndex QDirModel::index(const QString &path, int column = 0) const

Это перегруженная функция.

Возвращает индекс элемента модели для заданного path.

bool QDirModel::isDir(const QModelIndex &index) const

Возвращает true если элемент модели index представляет каталог; в противном случае возвращает false.

[virtual] QMimeData *QDirModel::mimeData(const QModelIndexList &indexes) const

Переопределено из QAbstractItemModel::mimeData().

Возвращает объект, содержащий сериализованное описание указанных indexes. Формат описания элементов, соответствующих индексам, получен из функции mimeTypes().

Если список индексов пустой, возвращается 0, а не сериализованный пустой список.

[virtual] QStringList QDirModel::mimeTypes() const

Переопределено из QAbstractItemModel::mimeTypes().

Возвращает список типов MIME, которые могут быть использованы для описания списка элементов в модели.

QModelIndex QDirModel::mkdir(const QModelIndex &parent, const QString &name)

Создаёт каталог с именем name в элементе родительской модели parent.

QStringList QDirModel::nameFilters() const

Возвращает список фильтров, применённых к именам в модели.

См. также setNameFilters().

[virtual] QModelIndex QDirModel::parent(const QModelIndex &child) const

Переопределено из QAbstractItemModel::parent().

Возвращает родительский элемент для заданного дочернего элемента child модели.

[slot] void QDirModel::refresh(const QModelIndex &parent = QModelIndex())

QDirModel кэширует информацию о файлах. Эта функция обновляет кэш. Параметр parent — это каталог, из которого модель обновляется; значение по умолчанию обновит модель с корневого каталога файловой системы (вся модель).

bool QDirModel::remove(const QModelIndex &index)

Удаляет элемент модели index из модели каталога и удаляет соответствующий файл из файловой системы, возвращая true при успехе. Если элемент удалить нельзя, возвращается false.

Предупреждение: Эта функция удаляет файлы из файловой системы; она не перемещает их в место, где их можно восстановить.

См. также rmdir().

bool QDirModel::rmdir(const QModelIndex &index)

Удаляет каталог, соответствующий элементу модели index в модели каталога, и удаляет соответствующий каталог из файловой системы, возвращая true при успехе. Если каталог удалить нельзя, возвращается false.

Предупреждение: Эта функция удаляет каталоги из файловой системы; она не перемещает их в место, где их можно восстановить.

См. также remove().

[virtual] int QDirModel::rowCount(const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::rowCount().

Возвращает количество строк в элементе родительской модели parent.

[virtual] bool QDirModel::setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole)

Переопределено из QAbstractItemModel::setData().

Устанавливает данные для элемента модели index с заданным role на данные, на которые ссылается value. Возвращает true при успехе; в противном случае возвращает false.

См. также data() и Qt::ItemDataRole.

void QDirModel::setFilter(QDir::Filters filters)

Устанавливает фильтр модели каталога на тот, что задан filters.

Обратите внимание, что задаваемый вами фильтр всегда должен включать значение перечисления QDir::AllDirs, в противном случае QDirModel не сможет прочитать структуру каталогов.

См. также filter() и QDir::Filters.

void QDirModel::setIconProvider(QFileIconProvider *provider)

Устанавливает provider значков файлов для модели каталога.

См. также iconProvider().

void QDirModel::setNameFilters(const QStringList &filters)

Устанавливает фильтры имён filters для модели каталога.

См. также nameFilters().

void QDirModel::setSorting(QDir::SortFlags sort)

Устанавливает порядок сортировки модели каталога на тот, что задан sort.

См. также sorting() и QDir::SortFlags.

[virtual] void QDirModel::sort(int column, Qt::SortOrder order = Qt::AscendingOrder)

Переопределено из QAbstractItemModel::sort().

Сортирует элементы модели в column, используя заданный order. Порядок — значение, определённое в Qt::SortOrder.

QDir::SortFlags QDirModel::sorting() const

Возвращает метод сортировки, используемый для модели каталога.

См. также setSorting() и QDir::SortFlags.

[virtual] Qt::DropActions QDirModel::supportedDropActions() const

Переопределено из QAbstractItemModel::supportedDropActions().

Возвращает поддерживаемые действия перемещения в эту модель.

См. также Qt::DropActions.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qdirmodel.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API