Spec-Zone.ru › Qt 5.9

Класс 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
  • 32 открытых функции унаследовано от 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/qt-5.9/qdirmodel.html

Spec-Zone.ru

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