Application:get
From GiderosMobile
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Available since: Gideros 2015.7
Class: Application
Description
Returns the state of the desktop setting provided as string parameter.
varies = application:get(setting)
Parameters
setting (string) the name of the desktop setting
Return values
Returns (varies) the value(s) of the setting
Compatibility table
QT | Win32 | UWP | Android | Apple MacOS | Apple iOS | Apple tvOS | Linux | HTML | |
---|---|---|---|---|---|---|---|---|---|
batteryLevel | X | X | |||||||
clipboard | X | X | X | ||||||
commandLine | X | X | |||||||
currentUrl | X | ||||||||
cursorPosition | X | X | X | ||||||
directory | X | X | X | ||||||
documentDirectory | X | X | X | ||||||
openDirectoryDialog | X | X | X | X | |||||
openFileDialog | X | X | X | X | |||||
pathfileexists | ? | X | X | ||||||
saveFileDialog | X | X | X | X | |||||
screenSize | X | X | X | X | X | ||||
temporaryDirectory | X | X | X | ||||||
windowPosition | X | X | X | ||||||
windowSize | X | X | X | ||||||
windowTitle | X | X | X |
Examples
Prints a list of all available settings
print(application:get("help"))
--[[
Accepted value for Desktop's application:get()
- [x,y] windowPosition
- [w,h] windowSize
- [w,h] screenSize
- [x,y] cursorPosition
- [text] clipboard
- [text] windowTitle
- [path] directory(where//help)
- [path] openDirectoryDialog(title|path//help)
- [path] openFileDialog(title|path|extensions//help)
- [path] saveFileDialog(title|path|extensions//help)
- [path] documentDirectory
- [path] temporaryDirectory
0
]]
print("\n")
print(application:get("directory", "help"))
--[[
Accepted value for directory :
- executable
- document
- desktop
- temporary
- data
- music
- movies
- pictures
- cache
- download
- home
0
]]
Various examples
print(application:get("windowTitle"))
print(application:get("documentDirectory"))
print(application:get("temporaryDirectory"))
-- get screen size
screenwidth, screenheight = application:get("screenSize") -- the actual user screen size!
application:set("windowPosition", (screenwidth - myappwidth)/2, (screenheight - myappheight)/2) -- center the app
application:set("windowTitle", "MY TITLE")
-- get the user download folder path
print(application:get("directory", "download")) -- prints C:/Users/xxx/Downloads
File dialog open directory
--local path = application:get("openDirectoryDialog", "Title|C:/tmp/") -- "title|path" DEPRECATED IN 2022.10
local path = application:get("openDirectoryDialog", "Title", "C:/tmp/") -- "title", "path" NEW WAY
-- win32
local path = application:get("openDirectoryDialog", "Title", "C:\\tmp\\") -- "title", "path" win32 NEW WAY
print(path)
File dialog open file
print(application:get("openFileDialog","Choisissez un liquide","I:\\","Bidon (*.bdn *.bid);;Fût et Tonneau (*.fut)"))
path = application:get("openFileDialog", "My Title", "c:\\", "Images (*.png *.jpg *.jpeg);;3D (*.obj *.glb *.fbx)"))
print(path) -- on cancel, returns nil for win32 and "" for other systems
-- file dialog to open a file of type .txt or .png
local path = application:get(
-- "openFileDialog", "Title|C:/tmp/|Text (*.txt);; Image (*.png)") -- "title|path|extensions" DEPRECATED IN 2022.10
"openFileDialog", "Title", "C:/tmp/", "Text (*.txt);; Image (*.png)") -- "title", "path", "extensions" NEW WAY
print(path)
-- file dialogs on win32 should use a delay Timer.delayedCall or Core.asyncCall
--self.tiled_ui.btnBrowse:addEventListener("clicked", self.browse, self) -- instead of this
self.tiled_ui.btnBrowse:addEventListener("clicked", function()
Core.asyncCall(TheStage.browse, self) -- this
end)
File dialog save file
-- first we choose the destination
local path = application:get(
-- "saveFileDialog", "Title|C:/tmp/|Text (*.txt);; Image (*.jpg)") -- "title|path|extensions" DEPRECATED IN 2022.10
"saveFileDialog", "Title", "C:/tmp/", "Text (*.txt);; Image (*.jpg)") -- "title", "path", "extensions" NEW WAY
-- and we save some data to it
if path ~= 0 then
--if path ~= nil then -- for win32
local srcf = io.open("mytext.txt", "rb")
local dstf = io.open(path, "wb")
local size = 2^13 -- good buffer size (8K)
while true do local block = srcf:read(size) if not block then break end dstf:write(block) end
srcf:close()
dstf:close()
end
Path File Exists
-- Path File Exists for Windows 64
-- tests folder path (nil=doesn't exist, 1=exists)
if application:get("pathfileexists", application:get("directory", "pictures").."/Folder01") == nil then
application:set("mkDir", application:get("directory", "pictures"), "Folder01")
application:set("mkDir", application:get("directory", "pictures").."/Folder01", "subfolder01")
application:set("mkDir", application:get("directory", "pictures").."/Folder01", "subfolder02")
end
-- Path File Exists for win32
-- tests folder path (nil=doesn't exist, 1=exists)
if application:get("pathfileexists", application:get("directory", "pictures").."\\Folder01") == nil then
-- creates it
application:set("mkDir", application:get("directory", "pictures").."\\Folder01")
end
- Application:canOpenUrl
- Application:checkPermission
- Application:configureFrustum
- Application:enableDrawInfo
- Application:enableOnDemandDraw
- Application:exit
- Application:get
- Application:getApiVersion
- Application:getAppId
- Application:getBackgroundColor
- Application:getClipboard
- Application:getContentHeight
- Application:getContentWidth
- Application:getDeviceHeight
- Application:getDeviceInfo
- Application:getDeviceName
- Application:getDeviceOrientation
- Application:getDeviceSafeArea
- Application:getDeviceWidth
- Application:getFps
- Application:getKeyboardModifiers
- Application:getLanguage
- Application:getLocale
- Application:getLogicalBounds
- Application:getLogicalHeight
- Application:getLogicalScaleX
- Application:getLogicalScaleY
- Application:getLogicalTranslateX
- Application:getLogicalTranslateY
- Application:getLogicalWidth
- Application:getNativePath
- Application:getOrientation
- Application:getProjectProperties
- Application:getScaleMode
- Application:getScreenDensity
- Application:getTextureMemoryUsage
- Application:isPlayerMode
- Application:openUrl
- Application:requestPermissions
- Application:set
- Application:setBackgroundColor
- Application:setClipboard
- Application:setEventMerging
- Application:setFps
- Application:setFullScreen
- Application:setKeepAwake
- Application:setKeyboardVisibility
- Application:setLogicalDimensions
- Application:setOrientation
- Application:setScaleMode
- Application:setTextInput
- Application:setWindowSize
- Application:vibrate