Class PlatformUtilities
Inherits the following classes: QObject
Inherited by the following classes: AndroidPlatformUtilities, IosPlatformUtilities
Public Types
| Type | Name |
|---|---|
| enum | Capability |
| enum | FileType |
Public Properties
| Type | Name |
|---|---|
| property PlatformUtilities::Capabilities | capabilities |
Public Signals
| Type | Name |
|---|---|
| signal void | resourceCanceled (const QString & message) Emitted when a resource has been opened. |
| signal void | resourceOpened (const QString & path) Emitted when a resource has been opened. |
| signal void | resourceReceived (const QString & path) Emitted when a resource has been received. |
Public Functions
| Type | Name |
|---|---|
| virtual QStringList | additionalApplicationDirectories () const |
| virtual Q_INVOKABLE QStringList | appDataDirs () const |
| virtual Q_INVOKABLE QString | applicationDirectory () const |
| Q_INVOKABLE QStringList | availableGrids () const |
| virtual PlatformUtilities::Capabilities | capabilities () const |
| virtual Qt::PermissionStatus | checkCameraPermission () const |
| virtual Q_DECL_DEPRECATED virtual Q_INVOKABLE bool | checkCameraPermissions () const |
| virtual Qt::PermissionStatus | checkMicrophonePermission () const |
| virtual Q_DECL_DEPRECATED virtual Q_INVOKABLE bool | checkMicrophonePermissions () const |
| virtual Q_DECL_DEPRECATED virtual Q_INVOKABLE bool | checkPositioningPermissions () const |
| virtual Q_INVOKABLE void | copyTextToClipboard (const QString & string) const |
| Q_INVOKABLE bool | createDir (const QString & path, const QString & dirname) const |
| virtual Q_INVOKABLE void | dimBrightness () |
| virtual void | executeQfAction () const |
| virtual Q_INVOKABLE void | exportDatasetTo (const QString & path) const Exports a dataset path to a user-specified location. |
| virtual Q_INVOKABLE void | exportFolderTo (const QString & path) const Exports a folder path to a user-specified location. |
| virtual Q_INVOKABLE ResourceSource * | getCameraPicture (const QString & prefix, const QString & pictureFilePath, const QString & suffix, QObject * parent=nullptr) |
| virtual Q_INVOKABLE ResourceSource * | getCameraVideo (const QString & prefix, const QString & videoFilePath, const QString & suffix, QObject * parent=nullptr) |
| virtual Q_INVOKABLE ResourceSource * | getFile (const QString & prefix, const QString & filePath, FileType fileType=AllFiles, QObject * parent=nullptr) |
| virtual Q_INVOKABLE ResourceSource * | getGalleryPicture (const QString & prefix, const QString & pictureFilePath, QObject * parent=nullptr) |
| virtual Q_INVOKABLE ResourceSource * | getGalleryVideo (const QString & prefix, const QString & videoFilePath, QObject * parent=nullptr) |
| virtual Q_INVOKABLE QString | getTextFromClipboard () const |
| virtual bool | hasQfAction () const |
| virtual bool | hasQgsProject () const |
| virtual Q_INVOKABLE void | importDatasets () const Requests and imports one or more datasets into QField's application directory action. |
| virtual Q_INVOKABLE void | importProjectArchive () const Requests and imports a project archive into QField's application directory action. |
| virtual Q_INVOKABLE void | importProjectFolder () const Requests and imports a project folder into QField's application directory action. |
| void | initSystem () |
| virtual Q_INVOKABLE bool | isSystemDarkTheme () const |
| virtual void | loadQgsProject () const |
| virtual Q_INVOKABLE ViewStatus * | open (const QString & uri, bool editing=false, QObject * parent=nullptr) |
| virtual Q_INVOKABLE ProjectSource * | openProject (QObject * parent=nullptr) |
| virtual Q_INVOKABLE void | removeDataset (const QString & path) const Removes a given dataset path . |
| virtual Q_INVOKABLE void | removeFolder (const QString & path) const Removes a given folder path . |
| Q_INVOKABLE bool | renameFile (const QString & oldFilePath, const QString & newFilePath, bool overwrite=true) const |
| virtual void | requestBackgroundPositioningPermissions () |
| virtual void | requestCameraPermission (std::function< void(Qt::PermissionStatus)> func) |
| virtual void | requestMicrophonePermission (std::function< void(Qt::PermissionStatus)> func) |
| virtual Q_INVOKABLE void | requestStoragePermission () const |
| virtual Q_INVOKABLE void | restoreBrightness () |
| Q_INVOKABLE bool | rmFile (const QString & filename) const |
| virtual QStringList | rootDirectories () const |
| virtual Q_INVOKABLE void | sendCompressedFolderTo (const QString & path) const Compresses a folder path and sends it via the platform native API. |
| virtual Q_INVOKABLE void | sendDatasetTo (const QString & path) const Sends a dataset path via the platform native API. |
| virtual Q_INVOKABLE void | setHandleVolumeKeys (const bool handle) |
| virtual Q_INVOKABLE void | setScreenLockPermission (const bool allowLock) |
| virtual QString | startPositioningService () const |
| virtual void | stopPositioningService () const |
| virtual Q_INVOKABLE double | systemFontPointSize () const |
| virtual QString | systemLocalDataLocation (const QString & subDir=QString()) const |
| virtual QString | systemSharedDataLocation () const |
| virtual Q_INVOKABLE void | updateProjectFromArchive (const QString & projectPath) const |
| virtual Q_INVOKABLE void | uploadPendingAttachments (QFieldCloudConnection * connection) const |
| virtual Q_INVOKABLE void | vibrate (int milliseconds) const |
| virtual | ~PlatformUtilities () |
Public Static Functions
| Type | Name |
|---|---|
| PlatformUtilities * | instance () |
Public Types Documentation
enum Capability
enum PlatformUtilities::Capability {
NoCapabilities = 0,
NativeCamera = 1,
AdjustBrightness = 1 << 1,
SentryFramework = 1 << 2,
NativeLocalDataPicker = 1 << 3,
CustomImport = 1 << 4,
CustomExport = 1 << 5,
CustomSend = 1 << 6,
FilePicker = 1 << 7,
VolumeKeys = 1 << 8,
Vibrate = 1 << 9,
UpdateProjectFromArchive = 1 << 10,
PositioningService = 1 << 11
};
enum FileType
enum PlatformUtilities::FileType {
AllFiles = 0,
AudioFiles
};
Public Properties Documentation
property capabilities [1/2]
PlatformUtilities::Capabilities PlatformUtilities::capabilities;
Public Signals Documentation
signal resourceCanceled
Emitted when a resource has been opened.
void PlatformUtilities::resourceCanceled;
signal resourceOpened
Emitted when a resource has been opened.
void PlatformUtilities::resourceOpened;
signal resourceReceived
Emitted when a resource has been received.
void PlatformUtilities::resourceReceived;
Public Functions Documentation
function additionalApplicationDirectories
virtual QStringList PlatformUtilities::additionalApplicationDirectories () const
Secondary application directories which can be used by individual platforms.
function appDataDirs
virtual Q_INVOKABLE QStringList PlatformUtilities::appDataDirs () const
Returns:
a list of data directories where user data is searched. User data are pg_service.conf, authentication config, grids, ...
function applicationDirectory
virtual Q_INVOKABLE QString PlatformUtilities::applicationDirectory () const
The main application directory within which projects and datasets can be imported.
function availableGrids
Q_INVOKABLE QStringList PlatformUtilities::availableGrids () const
function capabilities [2/2]
virtual PlatformUtilities::Capabilities PlatformUtilities::capabilities () const
Returns flags containing the supported capabilities of the platform.
function checkCameraPermission
virtual Qt::PermissionStatus PlatformUtilities::checkCameraPermission () const
function checkCameraPermissions
virtual Q_DECL_DEPRECATED virtual Q_INVOKABLE bool PlatformUtilities::checkCameraPermissions () const
Checks for camera permissions on the device. If the permissions are not given, the user will be asked to grant permissions.
Deprecated
Since QField 3.1
function checkMicrophonePermission
virtual Qt::PermissionStatus PlatformUtilities::checkMicrophonePermission () const
function checkMicrophonePermissions
virtual Q_DECL_DEPRECATED virtual Q_INVOKABLE bool PlatformUtilities::checkMicrophonePermissions () const
Checks for camera microphone on the device. If the permissions are not given, the user will be asked to grant permissions.
Deprecated
Since QField 3.1
function checkPositioningPermissions
virtual Q_DECL_DEPRECATED virtual Q_INVOKABLE bool PlatformUtilities::checkPositioningPermissions () const
Checks for positioning (GPS etc) permissions on the device. If the permissions are not given, the user will be asked to grant permissions. It will return true, if at least coarse permissions are granted. It will ask for fine permissions if none are granted.
Deprecated
Since QField 3.1
function copyTextToClipboard
virtual Q_INVOKABLE void PlatformUtilities::copyTextToClipboard (
const QString & string
) const
Copies a text string to the system clipboard.
function createDir
Q_INVOKABLE bool PlatformUtilities::createDir (
const QString & path,
const QString & dirname
) const
function dimBrightness
inline virtual Q_INVOKABLE void PlatformUtilities::dimBrightness ()
Dims the brightness of the screen on supported devices.
function executeQfAction
virtual void PlatformUtilities::executeQfAction () const
Loads the action provided during launch.
See also: hasQfAction
function exportDatasetTo
Exports a dataset path to a user-specified location.
virtual Q_INVOKABLE void PlatformUtilities::exportDatasetTo (
const QString & path
) const
function exportFolderTo
Exports a folder path to a user-specified location.
virtual Q_INVOKABLE void PlatformUtilities::exportFolderTo (
const QString & path
) const
function getCameraPicture
virtual Q_INVOKABLE ResourceSource * PlatformUtilities::getCameraPicture (
const QString & prefix,
const QString & pictureFilePath,
const QString & suffix,
QObject * parent=nullptr
)
Get a picture from camera and copy it to the requested prefix
Parameters:
prefixThe project folderpictureFilePathThe path (including subfolders and name) of the file
Returns:
The name of the picture or null
function getCameraVideo
virtual Q_INVOKABLE ResourceSource * PlatformUtilities::getCameraVideo (
const QString & prefix,
const QString & videoFilePath,
const QString & suffix,
QObject * parent=nullptr
)
Get a video from camera and copy it to the requested prefix
Parameters:
prefixThe project foldervideoFilePathThe path (including subfolders and name) of the file
Returns:
The name of the video or null
function getFile
virtual Q_INVOKABLE ResourceSource * PlatformUtilities::getFile (
const QString & prefix,
const QString & filePath,
FileType fileType=AllFiles,
QObject * parent=nullptr
)
Get a file from the operating system and copy it to the requested prefix
Parameters:
prefixThe project folderfilePathThe path (including subfolders and name) of the file
Returns:
The name of the file or null
function getGalleryPicture
virtual Q_INVOKABLE ResourceSource * PlatformUtilities::getGalleryPicture (
const QString & prefix,
const QString & pictureFilePath,
QObject * parent=nullptr
)
Get a picture from gallery and copy it to the requested prefix
Parameters:
prefixThe project folderpictureFilePathThe path (including subfolders and name) of the file
Returns:
The name of the picture or null
function getGalleryVideo
virtual Q_INVOKABLE ResourceSource * PlatformUtilities::getGalleryVideo (
const QString & prefix,
const QString & videoFilePath,
QObject * parent=nullptr
)
Get a video from gallery and copy it to the requested prefix
Parameters:
prefixThe project foldervideoFilePathThe path (including subfolders and name) of the video
Returns:
The name of the video or null
function getTextFromClipboard
virtual Q_INVOKABLE QString PlatformUtilities::getTextFromClipboard () const
Returns the current text from the system clipboard.
function hasQfAction
virtual bool PlatformUtilities::hasQfAction () const
Returns the current action string
See also: loadQfAction
function hasQgsProject
virtual bool PlatformUtilities::hasQgsProject () const
Returns TRUE is a project file has been provided and should be opened at launch.
See also: loadQgsProject
function importDatasets
Requests and imports one or more datasets into QField's application directory action.
virtual Q_INVOKABLE void PlatformUtilities::importDatasets () const
function importProjectArchive
Requests and imports a project archive into QField's application directory action.
virtual Q_INVOKABLE void PlatformUtilities::importProjectArchive () const
function importProjectFolder
Requests and imports a project folder into QField's application directory action.
virtual Q_INVOKABLE void PlatformUtilities::importProjectFolder () const
function initSystem
void PlatformUtilities::initSystem ()
This method will do initialization tasks and copy sample projects to a writable location It will also call afterUpdate whenever a new version is detected.
function isSystemDarkTheme
virtual Q_INVOKABLE bool PlatformUtilities::isSystemDarkTheme () const
Returns TRUE is the system uses a dark theme.
function loadQgsProject
virtual void PlatformUtilities::loadQgsProject () const
Loads the project file provided during launch.
See also: hasQgsProject
function open
virtual Q_INVOKABLE ViewStatus * PlatformUtilities::open (
const QString & uri,
bool editing=false,
QObject * parent=nullptr
)
Open the resource (file, image, ...) that is available under uri. The mimetype is detected to indicate the system how the file should be opened. An optional editing parameter can be set to true to indicate to supported systems the resource is expected to be edited.
function openProject
virtual Q_INVOKABLE ProjectSource * PlatformUtilities::openProject (
QObject * parent=nullptr
)
Indicates the system that we want to open a project. The system shall show a suitable user interface element (like a filebrowser) to let the user select a project. The call returns immediately and the returned ProjectSource will notify when the project has actually been chosen.
function removeDataset
Removes a given dataset path .
virtual Q_INVOKABLE void PlatformUtilities::removeDataset (
const QString & path
) const
function removeFolder
Removes a given folder path .
virtual Q_INVOKABLE void PlatformUtilities::removeFolder (
const QString & path
) const
function renameFile
Q_INVOKABLE bool PlatformUtilities::renameFile (
const QString & oldFilePath,
const QString & newFilePath,
bool overwrite=true
) const
function requestBackgroundPositioningPermissions
inline virtual void PlatformUtilities::requestBackgroundPositioningPermissions ()
function requestCameraPermission
virtual void PlatformUtilities::requestCameraPermission (
std::function< void(Qt::PermissionStatus)> func
)
function requestMicrophonePermission
virtual void PlatformUtilities::requestMicrophonePermission (
std::function< void(Qt::PermissionStatus)> func
)
function requestStoragePermission
inline virtual Q_INVOKABLE void PlatformUtilities::requestStoragePermission () const
function restoreBrightness
inline virtual Q_INVOKABLE void PlatformUtilities::restoreBrightness ()
Restores the brightness of the screen to its original value on supported devices.
function rmFile
Q_INVOKABLE bool PlatformUtilities::rmFile (
const QString & filename
) const
function rootDirectories
virtual QStringList PlatformUtilities::rootDirectories () const
A list of root directories (e.g. root of an external storage) when system-wide access is available.
function sendCompressedFolderTo
Compresses a folder path and sends it via the platform native API.
virtual Q_INVOKABLE void PlatformUtilities::sendCompressedFolderTo (
const QString & path
) const
function sendDatasetTo
Sends a dataset path via the platform native API.
virtual Q_INVOKABLE void PlatformUtilities::sendDatasetTo (
const QString & path
) const
function setHandleVolumeKeys
inline virtual Q_INVOKABLE void PlatformUtilities::setHandleVolumeKeys (
const bool handle
)
Sets whether the device volume keys are handled by QField.
function setScreenLockPermission
inline virtual Q_INVOKABLE void PlatformUtilities::setScreenLockPermission (
const bool allowLock
)
Sets whether the device screen is allowed to go in lock mode.
Parameters:
allowLockif set to FALSE, the screen will not be allowed to lock.
function startPositioningService
inline virtual QString PlatformUtilities::startPositioningService () const
Starts a positioning service on supported platforms and returns the remote object URL.
function stopPositioningService
inline virtual void PlatformUtilities::stopPositioningService () const
Stops a positioning service on supported platforms.
function systemFontPointSize
virtual Q_INVOKABLE double PlatformUtilities::systemFontPointSize () const
Returns the default system font size.
function systemLocalDataLocation
virtual QString PlatformUtilities::systemLocalDataLocation (
const QString & subDir=QString()
) const
Returns:
a directory where local data can be stored. this includes local qfieldcloud data or sample projects. A subDir is appended to the path.
function systemSharedDataLocation
virtual QString PlatformUtilities::systemSharedDataLocation () const
The path to share data location. Under this path, there should be the app specific directories qgis/ proj/ qfield/ ... Refers to /share or /usr/share on Linux. This path is assumed to be read only.
function updateProjectFromArchive
virtual Q_INVOKABLE void PlatformUtilities::updateProjectFromArchive (
const QString & projectPath
) const
Update a local project content from a user-picked archive file action
Parameters:
projectPaththe project file path
function uploadPendingAttachments
virtual Q_INVOKABLE void PlatformUtilities::uploadPendingAttachments (
QFieldCloudConnection * connection
) const
Uploads any pending attachments linked to the logged in user account.
function vibrate
inline virtual Q_INVOKABLE void PlatformUtilities::vibrate (
int milliseconds
) const
Vibrates the device on supported platforms.
function ~PlatformUtilities
virtual PlatformUtilities::~PlatformUtilities ()
Public Static Functions Documentation
function instance
static PlatformUtilities * PlatformUtilities::instance ()
The documentation for this class was generated from the following file src/core/platforms/platformutilities.h