![]() |
Qt 6.x
The Qt SDK
|
#include <qqmlpreviewfileengine.h>
Public Member Functions | |
QQmlPreviewFileEngine (const QString &file, const QString &absolute, QQmlPreviewFileLoader *loader) | |
void | setFileName (const QString &file) override |
Sets the file engine's file name to file. | |
bool | open (QIODevice::OpenMode flags, std::optional< QFile::Permissions > permissions) override |
Opens the file in the specified mode. | |
bool | close () override |
Closes the file, returning true if successful; otherwise returns false . | |
qint64 | size () const override |
Returns the size of the file. | |
qint64 | pos () const override |
Returns the current file position. | |
bool | seek (qint64) override |
Sets the file position to the given offset. | |
qint64 | read (char *data, qint64 maxlen) override |
Reads a number of characters from the file into data. | |
FileFlags | fileFlags (FileFlags type) const override |
This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members. | |
QString | fileName (QAbstractFileEngine::FileName file) const override |
Return the file engine's current file name in the format specified by file. | |
uint | ownerId (FileOwner) const override |
If owner is OwnerUser return the ID of the user who owns the file. | |
Iterator * | beginEntryList (QDir::Filters filters, const QStringList &filterNames) override |
Returns an instance of a QAbstractFileEngineIterator using filters for entry filtering and filterNames for name filtering. | |
Iterator * | endEntryList () override |
bool | flush () override |
Flushes the open file, returning true if successful; otherwise returns false. | |
bool | syncToDisk () override |
bool | isSequential () const override |
Returns true if the file is a sequential access device; returns false if the file is a direct access device. | |
bool | remove () override |
Requests that the file is deleted from the file system. | |
bool | copy (const QString &newName) override |
Copies the contents of this file to a file with the name newName. | |
bool | rename (const QString &newName) override |
Requests that the file be renamed to newName in the file system. | |
bool | renameOverwrite (const QString &newName) override |
bool | link (const QString &newName) override |
Creates a link from the file currently specified by fileName() to newName. | |
bool | mkdir (const QString &dirName, bool createParentDirectories, std::optional< QFile::Permissions > permissions=std::nullopt) const override |
Requests that the directory dirName be created with the specified permissions. | |
bool | rmdir (const QString &dirName, bool recurseParentDirectories) const override |
Requests that the directory dirName is deleted from the file system. | |
bool | setSize (qint64 size) override |
Requests that the file be set to size size. | |
bool | caseSensitive () const override |
Should return true if the underlying file system is case-sensitive; otherwise return false. | |
bool | isRelativePath () const override |
Return true if the file referred to by this file engine has a relative path; otherwise return false. | |
QStringList | entryList (QDir::Filters filters, const QStringList &filterNames) const override |
Requests that a list of all the files matching the filters list based on the filterNames in the file engine's directory are returned. | |
bool | setPermissions (uint perms) override |
Requests that the file's permissions be set to perms. | |
QByteArray | id () const override |
QString | owner (FileOwner) const override |
If owner is OwnerUser return the name of the user who owns the file. | |
QDateTime | fileTime (FileTime time) const override |
If time is BirthTime , return when the file was born (created). | |
int | handle () const override |
Returns the native file handle for this file engine. | |
qint64 | readLine (char *data, qint64 maxlen) override |
This function reads one line, terminated by a '\n' character, from the file info data. | |
qint64 | write (const char *data, qint64 len) override |
Writes len bytes from data to the file. | |
bool | extension (Extension extension, const ExtensionOption *option, ExtensionReturn *output) override |
bool | supportsExtension (Extension extension) const override |
![]() | |
virtual | ~QAbstractFileEngine () |
Destroys the QAbstractFileEngine. | |
virtual bool | open (QIODevice::OpenMode openMode, std::optional< QFile::Permissions > permissions=std::nullopt) |
Opens the file in the specified mode. | |
virtual bool | close () |
Closes the file, returning true if successful; otherwise returns false . | |
virtual bool | flush () |
Flushes the open file, returning true if successful; otherwise returns false. | |
virtual bool | syncToDisk () |
virtual qint64 | size () const |
Returns the size of the file. | |
virtual qint64 | pos () const |
Returns the current file position. | |
virtual bool | seek (qint64 pos) |
Sets the file position to the given offset. | |
virtual bool | isSequential () const |
Returns true if the file is a sequential access device; returns false if the file is a direct access device. | |
virtual bool | remove () |
Requests that the file is deleted from the file system. | |
virtual bool | copy (const QString &newName) |
Copies the contents of this file to a file with the name newName. | |
virtual bool | rename (const QString &newName) |
Requests that the file be renamed to newName in the file system. | |
virtual bool | renameOverwrite (const QString &newName) |
virtual bool | link (const QString &newName) |
Creates a link from the file currently specified by fileName() to newName. | |
virtual bool | mkdir (const QString &dirName, bool createParentDirectories, std::optional< QFile::Permissions > permissions=std::nullopt) const |
Requests that the directory dirName be created with the specified permissions. | |
virtual bool | rmdir (const QString &dirName, bool recurseParentDirectories) const |
Requests that the directory dirName is deleted from the file system. | |
virtual bool | setSize (qint64 size) |
Requests that the file be set to size size. | |
virtual bool | caseSensitive () const |
Should return true if the underlying file system is case-sensitive; otherwise return false. | |
virtual bool | isRelativePath () const |
Return true if the file referred to by this file engine has a relative path; otherwise return false. | |
virtual QStringList | entryList (QDir::Filters filters, const QStringList &filterNames) const |
Requests that a list of all the files matching the filters list based on the filterNames in the file engine's directory are returned. | |
virtual FileFlags | fileFlags (FileFlags type=FileInfoAll) const |
This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members. | |
virtual bool | setPermissions (uint perms) |
Requests that the file's permissions be set to perms. | |
virtual QByteArray | id () const |
virtual QString | fileName (FileName file=DefaultName) const |
Return the file engine's current file name in the format specified by file. | |
virtual uint | ownerId (FileOwner) const |
If owner is OwnerUser return the ID of the user who owns the file. | |
virtual QString | owner (FileOwner) const |
If owner is OwnerUser return the name of the user who owns the file. | |
virtual bool | setFileTime (const QDateTime &newDate, FileTime time) |
virtual QDateTime | fileTime (FileTime time) const |
If time is BirthTime , return when the file was born (created). | |
virtual void | setFileName (const QString &file) |
Sets the file engine's file name to file. | |
virtual int | handle () const |
Returns the native file handle for this file engine. | |
virtual bool | cloneTo (QAbstractFileEngine *target) |
bool | atEnd () const |
uchar * | map (qint64 offset, qint64 size, QFile::MemoryMapFlags flags) |
bool | unmap (uchar *ptr) |
virtual Iterator * | beginEntryList (QDir::Filters filters, const QStringList &filterNames) |
Returns an instance of a QAbstractFileEngineIterator using filters for entry filtering and filterNames for name filtering. | |
virtual Iterator * | endEntryList () |
virtual qint64 | read (char *data, qint64 maxlen) |
Reads a number of characters from the file into data. | |
virtual qint64 | readLine (char *data, qint64 maxlen) |
This function reads one line, terminated by a '\n' character, from the file info data. | |
virtual qint64 | write (const char *data, qint64 len) |
Writes len bytes from data to the file. | |
QFile::FileError | error () const |
Returns the QFile::FileError that resulted from the last failed operation. | |
QString | errorString () const |
Returns the human-readable message appropriate to the current error reported by error(). | |
virtual bool | extension (Extension extension, const ExtensionOption *option=nullptr, ExtensionReturn *output=nullptr) |
virtual bool | supportsExtension (Extension extension) const |
Additional Inherited Members | |
![]() | |
enum | FileFlag { ReadOwnerPerm = 0x4000 , WriteOwnerPerm = 0x2000 , ExeOwnerPerm = 0x1000 , ReadUserPerm = 0x0400 , WriteUserPerm = 0x0200 , ExeUserPerm = 0x0100 , ReadGroupPerm = 0x0040 , WriteGroupPerm = 0x0020 , ExeGroupPerm = 0x0010 , ReadOtherPerm = 0x0004 , WriteOtherPerm = 0x0002 , ExeOtherPerm = 0x0001 , LinkType = 0x10000 , FileType = 0x20000 , DirectoryType = 0x40000 , BundleType = 0x80000 , HiddenFlag = 0x0100000 , LocalDiskFlag = 0x0200000 , ExistsFlag = 0x0400000 , RootFlag = 0x0800000 , Refresh = 0x1000000 , PermsMask = 0x0000FFFF , TypesMask = 0x000F0000 , FlagsMask = 0x0FF00000 , FileInfoAll = FlagsMask | PermsMask | TypesMask } |
The permissions and types of a file, suitable for OR'ing together. More... | |
enum | FileName { DefaultName , BaseName , PathName , AbsoluteName , AbsolutePathName , AbsoluteLinkTarget , CanonicalName , CanonicalPathName , BundleName , JunctionName , RawLinkPath , NFileNames } |
These values are used to request a file name in a particular format. More... | |
enum | FileOwner { OwnerUser , OwnerGroup } |
\value OwnerUser The user who owns the file. More... | |
enum | FileTime { AccessTime , BirthTime , MetadataChangeTime , ModificationTime } |
These are used by the fileTime() function. More... | |
enum | Extension { AtEndExtension , FastReadLineExtension , MapExtension , UnMapExtension } |
typedef QAbstractFileEngineIterator | Iterator |
![]() | |
static QAbstractFileEngine * | create (const QString &fileName) |
Creates and returns a QAbstractFileEngine suitable for processing fileName. | |
![]() | |
void | setError (QFile::FileError error, const QString &str) |
Sets the error type to error, and the error string to errorString. | |
QAbstractFileEngine () | |
Constructs a new QAbstractFileEngine that does not refer to any file or directory. | |
QAbstractFileEngine (QAbstractFileEnginePrivate &) | |
![]() | |
QScopedPointer< QAbstractFileEnginePrivate > | d_ptr |
Definition at line 26 of file qqmlpreviewfileengine.h.
QQmlPreviewFileEngine::QQmlPreviewFileEngine | ( | const QString & | file, |
const QString & | absolute, | ||
QQmlPreviewFileLoader * | loader | ||
) |
Definition at line 87 of file qqmlpreviewfileengine.cpp.
|
overridevirtual |
Returns an instance of a QAbstractFileEngineIterator using filters for entry filtering and filterNames for name filtering.
This function is called by QDirIterator to initiate directory iteration.
QDirIterator takes ownership of the returned instance, and deletes it when it's done.
Reimplemented from QAbstractFileEngine.
Definition at line 218 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::beginEntryList(), and filters.
|
overridevirtual |
Should return true if the underlying file system is case-sensitive; otherwise return false.
Reimplemented from QAbstractFileEngine.
Definition at line 298 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::caseSensitive().
|
overridevirtual |
Closes the file, returning true if successful; otherwise returns false
.
The default implementation always returns false
.
Reimplemented from QAbstractFileEngine.
Definition at line 120 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::close(), QBuffer::close(), QQmlPreviewFileLoader::Directory, QQmlPreviewFileLoader::Fallback, and QQmlPreviewFileLoader::File.
|
overridevirtual |
Copies the contents of this file to a file with the name newName.
Returns true
on success; otherwise, false is returned.
Reimplemented from QAbstractFileEngine.
Definition at line 250 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::copy().
|
overridevirtual |
Reimplemented from QAbstractFileEngine.
Definition at line 225 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::endEntryList().
|
overridevirtual |
Requests that a list of all the files matching the filters list based on the filterNames in the file engine's directory are returned.
Should return an empty list if the file engine refers to a file rather than a directory, or if the directory is unreadable or does not exist or if nothing matches the specifications.
Reimplemented from QAbstractFileEngine.
Definition at line 308 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::entryList(), and filters.
|
overridevirtual |
This virtual function can be reimplemented in a QAbstractFileEngine subclass to provide support for extensions. The option argument is provided as input to the extension, and this function can store output results in output.
The behavior of this function is determined by extension; see the Extension documentation for details.
You can call supportsExtension() to check if an extension is supported by the file engine.
By default, no extensions are supported, and this function returns false
.
Reimplemented from QAbstractFileEngine.
Definition at line 352 of file qqmlpreviewfileengine.cpp.
References extension(), QAbstractFileEngine::extension(), and output.
|
overridevirtual |
This function should return the set of OR'd flags that are true for the file engine's file, and that are in the type's OR'd members.
In your reimplementation you can use the type argument as an optimization hint and only return the OR'd set of members that are true and that match those in type; in other words you can ignore any members not mentioned in type, thus avoiding some potentially expensive lookups or system calls.
Reimplemented from QAbstractFileEngine.
Definition at line 155 of file qqmlpreviewfileengine.cpp.
References QQmlPreviewFileLoader::Directory, QAbstractFileEngine::DirectoryType, QAbstractFileEngine::ExistsFlag, QAbstractFileEngine::fileFlags(), QAbstractFileEngine::FileType, QAbstractFileEngine::FlagsMask, isRootPath(), QAbstractFileEngine::PermsMask, QAbstractFileEngine::ReadGroupPerm, QAbstractFileEngine::ReadOtherPerm, QAbstractFileEngine::ReadOwnerPerm, QAbstractFileEngine::ReadUserPerm, ret, QAbstractFileEngine::RootFlag, and QAbstractFileEngine::TypesMask.
|
overridevirtual |
Return the file engine's current file name in the format specified by file.
If you don't handle some FileName
possibilities, return the file name set in setFileName() when an unhandled format is requested.
Reimplemented from QAbstractFileEngine.
Definition at line 184 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::AbsolutePathName, QAbstractFileEngine::BaseName, QAbstractFileEngine::CanonicalName, QAbstractFileEngine::CanonicalPathName, file, QAbstractFileEngine::fileName(), QString::lastIndexOf(), QString::left(), QString::mid(), and QAbstractFileEngine::PathName.
If time is BirthTime
, return when the file was born (created).
If time is MetadataChangeTime
, return when the file's metadata was last changed. If time is ModificationTime
, return when the file was most recently modified. If time is AccessTime
, return when the file was most recently accessed (e.g. read or written). If the time cannot be determined return QDateTime() (an invalid date time).
Reimplemented from QAbstractFileEngine.
Definition at line 330 of file qqmlpreviewfileengine.cpp.
References QDateTime::currentDateTime(), QAbstractFileEngine::fileTime(), and time.
|
overridevirtual |
Flushes the open file, returning true if successful; otherwise returns false.
The default implementation always returns false
.
Reimplemented from QAbstractFileEngine.
Definition at line 230 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::flush().
|
overridevirtual |
Returns the native file handle for this file engine.
This handle must be used with care; its value and type are platform specific, and using it will most likely lead to non-portable code.
Reimplemented from QAbstractFileEngine.
Definition at line 337 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::handle().
|
overridevirtual |
Return an identifier that (hopefully) uniquely identifies this file in the system. Returns an invalid QByteArray() if that cannot be calculated.
Reimplemented from QAbstractFileEngine.
Definition at line 320 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::id().
|
overridevirtual |
Return true if the file referred to by this file engine has a relative path; otherwise return false.
Reimplemented from QAbstractFileEngine.
Definition at line 303 of file qqmlpreviewfileengine.cpp.
References isRelative(), and QAbstractFileEngine::isRelativePath().
|
overridevirtual |
Returns true
if the file is a sequential access device; returns false if the file is a direct access device.
Operations involving size() and seek(qint64) are not valid on sequential devices.
Reimplemented from QAbstractFileEngine.
Definition at line 240 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::isSequential(), and QIODevice::isSequential().
|
overridevirtual |
Creates a link from the file currently specified by fileName() to newName.
What a link is depends on the underlying filesystem (be it a shortcut on Windows or a symbolic link on Unix). Returns true if successful; otherwise returns false
.
Reimplemented from QAbstractFileEngine.
Definition at line 265 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::link().
|
overridevirtual |
Requests that the directory dirName be created with the specified permissions.
If createParentDirectories is true, then any sub-directories in dirName that don't exist must be created. If createParentDirectories is false then any sub-directories in dirName must already exist for the function to succeed. If the operation succeeds return true; otherwise return false.
If permissions is null then implementation-specific default permissions are used.
Reimplemented from QAbstractFileEngine.
Definition at line 270 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::mkdir().
|
overridevirtual |
Opens the file in the specified mode.
Returns true
if the file was successfully opened; otherwise returns false
.
The mode is an OR combination of QIODevice::OpenMode and QIODevice::HandlingMode values.
If the file is created as a result of this call, its permissions are set according to permissision. Null value means an implementation- specific default.
Reimplemented from QAbstractFileEngine.
Definition at line 105 of file qqmlpreviewfileengine.cpp.
References QQmlPreviewFileLoader::Directory, QQmlPreviewFileLoader::Fallback, QQmlPreviewFileLoader::File, QBuffer::open(), and QAbstractFileEngine::open().
If owner is OwnerUser
return the name of the user who owns the file.
If owner is OwnerGroup
return the name of the group that own the file. If you can't determine the owner return QString().
Reimplemented from QAbstractFileEngine.
Definition at line 325 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::owner(), and owner().
Referenced by owner(), and ownerId().
|
overridevirtual |
If owner is OwnerUser
return the ID of the user who owns the file.
If owner is OwnerGroup
return the ID of the group that own the file. If you can't determine the owner return -2.
Reimplemented from QAbstractFileEngine.
Definition at line 213 of file qqmlpreviewfileengine.cpp.
References owner(), and QAbstractFileEngine::ownerId().
|
overridevirtual |
Returns the current file position.
This is the position of the data read/write head of the file.
Reimplemented from QAbstractFileEngine.
Definition at line 140 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::pos(), and QBuffer::pos().
Reads a number of characters from the file into data.
At most maxlen characters will be read.
Returns -1 if a fatal error occurs, or 0 if there are no bytes to read.
Reimplemented from QAbstractFileEngine.
Definition at line 150 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::read(), and QIODevice::read().
This function reads one line, terminated by a '\n' character, from the file info data.
At most maxlen characters will be read. The end-of-line character is included.
Reimplemented from QAbstractFileEngine.
Definition at line 342 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::readLine(), and QIODevice::readLine().
|
overridevirtual |
Requests that the file is deleted from the file system.
If the operation succeeds return true; otherwise return false.
Reimplemented from QAbstractFileEngine.
Definition at line 245 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::remove().
|
overridevirtual |
Requests that the file be renamed to newName in the file system.
If the operation succeeds return true; otherwise return false.
Reimplemented from QAbstractFileEngine.
Definition at line 255 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::rename().
|
overridevirtual |
Requests that the file be renamed to newName in the file system. If the new name already exists, it must be overwritten. If the operation succeeds, returns true
; otherwise returns false.
Reimplemented from QAbstractFileEngine.
Definition at line 260 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::renameOverwrite().
|
overridevirtual |
Requests that the directory dirName is deleted from the file system.
When recurseParentDirectories is true, then any empty parent-directories in dirName must also be deleted. If recurseParentDirectories is false, only the dirName leaf-node should be deleted. In most file systems a directory cannot be deleted using this function if it is non-empty. If the operation succeeds return true; otherwise return false.
Reimplemented from QAbstractFileEngine.
Definition at line 276 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::rmdir().
|
overridevirtual |
Sets the file position to the given offset.
Returns true
if the position was successfully set; otherwise returns false
.
The offset is from the beginning of the file, unless the file is sequential.
Reimplemented from QAbstractFileEngine.
Definition at line 145 of file qqmlpreviewfileengine.cpp.
References QBuffer::seek(), and QAbstractFileEngine::seek().
Sets the file engine's file name to file.
This file name is the file that the rest of the virtual functions will operate on.
Reimplemented from QAbstractFileEngine.
Definition at line 94 of file qqmlpreviewfileengine.cpp.
References absolutePath(), QBuffer::close(), file, QScopedPointer< T, Cleanup >::reset(), and QBuffer::setData().
|
overridevirtual |
Requests that the file's permissions be set to perms.
The argument perms will be set to the OR-ed together combination of QAbstractFileEngine::FileInfo, with only the QAbstractFileEngine::PermsMask being honored. If the operations succceeds return true; otherwise return false;
Reimplemented from QAbstractFileEngine.
Definition at line 315 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::setPermissions().
|
overridevirtual |
Requests that the file be set to size size.
If size is larger than the current file then it is filled with 0's, if smaller it is simply truncated. If the operations succceeds return true; otherwise return false;
Reimplemented from QAbstractFileEngine.
Definition at line 281 of file qqmlpreviewfileengine.cpp.
References QBuffer::buffer(), QQmlPreviewFileLoader::Directory, QQmlPreviewFileLoader::Fallback, QQmlPreviewFileLoader::File, QByteArray::resize(), and QAbstractFileEngine::setSize().
|
overridevirtual |
Returns the size of the file.
Reimplemented from QAbstractFileEngine.
Definition at line 135 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::size(), and QBuffer::size().
|
overridevirtual |
This virtual function returns true
if the file engine supports extension; otherwise, false is returned. By default, no extensions are supported.
Reimplemented from QAbstractFileEngine.
Definition at line 357 of file qqmlpreviewfileengine.cpp.
References extension(), and QAbstractFileEngine::supportsExtension().
|
overridevirtual |
Flushes and syncs the file to disk.
Returns true
if successful; otherwise returns false
. The default implementation always returns false
.
Reimplemented from QAbstractFileEngine.
Definition at line 235 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::syncToDisk().
Writes len bytes from data to the file.
Returns the number of characters written on success; otherwise returns -1.
Reimplemented from QAbstractFileEngine.
Definition at line 347 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::write(), and QIODevice::write().