Difference between revisions of "Application:get"

From GiderosMobile
(added example from rrraptor)
(added example from rrraptor)
(One intermediate revision by the same user not shown)
Line 15: Line 15:
 
'''Returns''' (varies) the value(s) of the setting
 
'''Returns''' (varies) the value(s) of the setting
  
=== Android ===
+
=== '''Android''' ===
For android this was added in Gideros 2020.4:
+
Added in Gideros 2020.4:
 
<source lang="lua">
 
<source lang="lua">
 
application:get("batteryLevel")
 
application:get("batteryLevel")
Line 72: Line 72:
 
</source>
 
</source>
  
'''Opens the file browser window'''
+
'''File dialog to open a file of type .txt or .png'''
 
<source lang="lua">
 
<source lang="lua">
local path = application:get("openFileDialog", "Title|D:/ML/|Text (*.txt);; Save file (*.save)")
+
local path = application:get(
--local path = application:get("saveFileDialog", "Title|D:/ML/|Text (*.txt);; Save file (*.save)")
+
"openFileDialog", "Title|C:/tmp/|Text (*.txt);; Image (*.png)") -- "title|path|extensions"
--local path = application:get("openDirectoryDialog", "Title|D:/ML/")
+
print(path)
 +
</source>
 +
 
 +
'''File dialog to save a file as .txt or .jpg'''
 +
<source lang="lua">
 +
-- first we choose the destination
 +
local path = application:get(
 +
"saveFileDialog", "Title|C:/tmp/|Text (*.txt);; Image (*.jpg)") -- "title|path|extensions"
 +
if path ~= 0 then -- and we save some data to it
 +
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
 +
</source>
 +
 
 +
'''File dialog to open a directory'''
 +
<source lang="lua">
 +
local path = application:get("openDirectoryDialog", "Title|C:/tmp/") -- "title|path"
 
print(path)
 
print(path)
 
</source>
 
</source>
  
 
{{Application}}
 
{{Application}}

Revision as of 22:26, 22 January 2021

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

Android

Added in Gideros 2020.4:

application:get("batteryLevel")

Examples

Various examples

print(application:get("windowTitle"))
print(application:get("documentDirectory"))
print(application:get("temporaryDirectory"))
print("\n")

-- get the user download folder path
print(application:get("directory", "download")) -- prints C:/Users/xxx/Downloads

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
]]

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"
print(path)

File dialog to save a file as .txt or .jpg

-- first we choose the destination
local path = application:get(
	"saveFileDialog", "Title|C:/tmp/|Text (*.txt);; Image (*.jpg)") -- "title|path|extensions"
if path ~= 0 then -- and we save some data to it
	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

File dialog to open a directory

local path = application:get("openDirectoryDialog", "Title|C:/tmp/") -- "title|path"
print(path)