Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#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. | |
IteratorUniquePtr | beginEntryList (const QString &path, QDir::Filters filters, const QStringList &filterNames) override |
Returns a QAbstractFileEngine::IteratorUniquePtr, that can be used to iterate over the entries in path, using filters for entry filtering and filterNames for name filtering. | |
IteratorUniquePtr | 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 (QFile::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 |
Public Member Functions inherited from QAbstractFileEngine | |
virtual | ~QAbstractFileEngine () |
Destroys the QAbstractFileEngine. | |
virtual bool | setFileTime (const QDateTime &newDate, QFile::FileTime time) |
virtual bool | cloneTo (QAbstractFileEngine *target) |
bool | atEnd () const |
uchar * | map (qint64 offset, qint64 size, QFile::MemoryMapFlags flags) |
bool | unmap (uchar *ptr) |
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(). | |
Additional Inherited Members | |
Public Types inherited from QAbstractFileEngine | |
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 | Extension { AtEndExtension , FastReadLineExtension , MapExtension , UnMapExtension } |
typedef QAbstractFileEngineIterator | Iterator |
using | IteratorUniquePtr = std::unique_ptr<Iterator> |
Static Public Member Functions inherited from QAbstractFileEngine | |
static std::unique_ptr< QAbstractFileEngine > | create (const QString &fileName) |
Creates and returns a QAbstractFileEngine suitable for processing fileName. | |
Protected Member Functions inherited from QAbstractFileEngine | |
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 &) | |
Protected Attributes inherited from QAbstractFileEngine | |
QScopedPointer< QAbstractFileEnginePrivate > | d_ptr |
Definition at line 29 of file qqmlpreviewfileengine.h.
QQmlPreviewFileEngine::QQmlPreviewFileEngine | ( | const QString & | file, |
const QString & | absolute, | ||
QQmlPreviewFileLoader * | loader ) |
Definition at line 83 of file qqmlpreviewfileengine.cpp.
|
overridevirtual |
Returns a QAbstractFileEngine::IteratorUniquePtr, that can be used to iterate over the entries in path, using filters for entry filtering and filterNames for name filtering.
This function is called by QDirListing to initiate directory iteration.
Reimplemented from QAbstractFileEngine.
Definition at line 214 of file qqmlpreviewfileengine.cpp.
References filters.
|
overridevirtual |
Should return true if the underlying file system is case-sensitive; otherwise return false.
Reimplemented from QAbstractFileEngine.
Definition at line 295 of file qqmlpreviewfileengine.cpp.
|
overridevirtual |
Closes the file, returning true if successful; otherwise returns false
.
The default implementation always returns false
.
Reimplemented from QAbstractFileEngine.
Definition at line 116 of file qqmlpreviewfileengine.cpp.
References 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 247 of file qqmlpreviewfileengine.cpp.
|
overridevirtual |
Reimplemented from QAbstractFileEngine.
Definition at line 222 of file qqmlpreviewfileengine.cpp.
|
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 305 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 349 of file qqmlpreviewfileengine.cpp.
References 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 151 of file qqmlpreviewfileengine.cpp.
References QQmlPreviewFileLoader::Directory, QAbstractFileEngine::DirectoryType, QAbstractFileEngine::ExistsFlag, 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 180 of file qqmlpreviewfileengine.cpp.
References QAbstractFileEngine::AbsolutePathName, QAbstractFileEngine::BaseName, QAbstractFileEngine::CanonicalName, QAbstractFileEngine::CanonicalPathName, file, QString::lastIndexOf(), QString::left(), QString::mid(), and QAbstractFileEngine::PathName.
|
overridevirtual |
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 327 of file qqmlpreviewfileengine.cpp.
References QDateTime::currentDateTime(), 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 227 of file qqmlpreviewfileengine.cpp.
|
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 334 of file qqmlpreviewfileengine.cpp.
|
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 317 of file qqmlpreviewfileengine.cpp.
References QByteArray().
|
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 300 of file qqmlpreviewfileengine.cpp.
References isRelative().
|
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 237 of file qqmlpreviewfileengine.cpp.
References 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 262 of file qqmlpreviewfileengine.cpp.
|
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 267 of file qqmlpreviewfileengine.cpp.
|
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 101 of file qqmlpreviewfileengine.cpp.
References QQmlPreviewFileLoader::Directory, QQmlPreviewFileLoader::Fallback, QQmlPreviewFileLoader::File, and QBuffer::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 322 of file qqmlpreviewfileengine.cpp.
References 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 209 of file qqmlpreviewfileengine.cpp.
References owner().
|
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 136 of file qqmlpreviewfileengine.cpp.
References 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 146 of file qqmlpreviewfileengine.cpp.
References 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 339 of file qqmlpreviewfileengine.cpp.
References 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 242 of file qqmlpreviewfileengine.cpp.
|
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 252 of file qqmlpreviewfileengine.cpp.
|
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 257 of file qqmlpreviewfileengine.cpp.
|
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 273 of file qqmlpreviewfileengine.cpp.
|
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 141 of file qqmlpreviewfileengine.cpp.
References QBuffer::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 90 of file qqmlpreviewfileengine.cpp.
References absolutePath(), QBuffer::close(), file, QByteArray(), 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 312 of file qqmlpreviewfileengine.cpp.
|
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 278 of file qqmlpreviewfileengine.cpp.
References QBuffer::buffer(), QQmlPreviewFileLoader::Directory, QQmlPreviewFileLoader::Fallback, QQmlPreviewFileLoader::File, and QByteArray::resize().
|
overridevirtual |
Returns the size of the file.
Reimplemented from QAbstractFileEngine.
Definition at line 131 of file qqmlpreviewfileengine.cpp.
References 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 354 of file qqmlpreviewfileengine.cpp.
References extension().
|
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 232 of file qqmlpreviewfileengine.cpp.
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 344 of file qqmlpreviewfileengine.cpp.
References QIODevice::write().