Difference between revisions of "Application:set"

From GiderosMobile
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
<languages />
+
'''Available since:''' Gideros 2015.7<br/>
'''<translate>Available since</translate>:''' Gideros 2015.7<br/>
+
'''Class:''' [[Application]]<br/>
'''<translate>Class</translate>:''' [[Special:MyLanguage/Application|Application]]<br/>
+
 
=== <translate>Description</translate> ===
+
=== Description ===
<translate><br />
+
Sets the state of the desktop setting provided as string parameter.
Sets the state of the desktop setting provided as string parameter.<br />
+
<syntaxhighlight lang="lua">
<br /></translate>
+
application:set(setting,value)
<source lang="lua">
+
</syntaxhighlight>
 +
 
 +
'''new''' Gideros 2023.11: implement '''application:set("statusBar")''' for Android and iOS</br>
 +
'''new''' Gideros 2022.1: implement '''application:set("wintabMode")'''
 +
 
 +
=== Parameters ===
 +
'''setting''': (string) the desktop setting<br/>
 +
'''value''': (varies) the new setting value(s)<br/>
 +
 
 +
=== '''Compatibility table''' ===
 +
{| class="wikitable" style="text-align: center;"
 +
!!!QT!!Win32!!UWP!!Android!!Apple MacOS!!Apple iOS!!Apple tvOS!!Linux!!HTML
 +
|-
 +
|clipboard||X||X||||||||||||X||
 +
|-
 +
|cursor||X||X||X||||X||||||X||X
 +
|-
 +
|cursorPosition||X||X||||||||||||||
 +
|-
 +
|documentDirectory||X||X||||||||||||X||
 +
|-
 +
|maximumSize||X||||||||||||||||
 +
|-
 +
|minimumSize||X||||||||||||||||
 +
|-
 +
|mkDir||X||X||||||||||||X||
 +
|-
 +
|statusBar||||||||X||||X||||||
 +
|-
 +
|temporaryDirectory||X||X||||||||||||X||
 +
|-
 +
|windowColor||X||||||||||||||||
 +
|-
 +
|windowModel||X||||||||||||||||
 +
|-
 +
|windowPosition||X||X||||||||||||X||
 +
|-
 +
|windowSize||X||X||||||||||||X||
 +
|-
 +
|windowTitle||X||X||||||||||||X||X
 +
|-
 +
|wintabMode||X||||||||||||||||
 +
|}
 +
 
 +
=== List of available parameters and settings ===
 +
To get a list of parameters that can be set use:
 +
<syntaxhighlight lang="lua">
 +
print(application:set("help"))
 +
--[[
 +
- windowPosition(x,y)
 +
- windowSize(w,h)
 +
- minimumSize(w,h)
 +
- maximumSize(w,h)
 +
- windowColor(r,g,b)
 +
- windowTitle(text)
 +
- windowModel(type//help)
 +
- cursor(type//help)
 +
- cursorPosition(x,y)
 +
- clipboard(text)
 +
- mkdir(path|dirName//help)
 +
- documentDirectory(path)
 +
- temporaryDirectory(path)
 +
]]
 +
</syntaxhighlight>
 +
 
 +
To get help for individual settings use:
 +
<syntaxhighlight lang="lua">
 +
print(application:set("cursor","help")) -- eg: cursor
 +
--[[
 +
Accepted value for cursor :
 +
- arrow
 +
- upArrow
 +
- cross
 +
- wait
 +
- IBeam
 +
- sizeVer
 +
- sizeHor
 +
- sizeBDiag
 +
- sizeFDiag
 +
- sizeAll
 +
- blank -- not available on win32
 +
- splitV
 +
- splitH
 +
- pointingHand
 +
- forbidden
 +
- whatsThis
 +
- busy
 +
- openHand -- not available on win32
 +
- closedHand -- not available on win32
 +
- dragCopy -- not available on win32
 +
- dragMove -- not available on win32
 +
- dragLink -- not available on win32
 +
]]
 +
</syntaxhighlight>
 +
 
 +
<syntaxhighlight lang="lua">
 +
print(application:set("windowModel","help")) -- eg: window mode
 +
--[[
 +
Accepted value for windowModel :
 +
- reset
 +
- stayOnTop
 +
- stayOnBottom
 +
- frameless
 +
- noTitleBar
 +
- noButton
 +
- onlyMinimize
 +
- onlyMaximize
 +
- onlyClose
 +
- noMinimize
 +
- noMaximize
 +
- noClose
 +
- helpButton
 +
]]
 +
</syntaxhighlight>
 +
 
 +
=== Examples ===
 +
<syntaxhighlight lang="lua">
 +
application:set("windowPosition", 64, 64)
 +
application:set("windowColor", 0, 0, 0)
 
application:set("windowTitle", "My lovely window title")
 
application:set("windowTitle", "My lovely window title")
</source>
+
application:set("cursor", "openHand")
<translate><br />
+
</syntaxhighlight>
<br/>
+
 
Get list of parameters that can be set with:
+
<syntaxhighlight lang="lua">
</translate>
+
-- global app size
<source lang="lua">
+
myappleft, myapptop, myappright, myappbot = application:getLogicalBounds()
print(application:set("help"))
+
myappwidth, myappheight = myappright - myappleft, myappbot - myapptop
</source>
+
 
<translate><br />
+
if application:getDeviceInfo() == "Windows" and not application:isPlayerMode() then
Get help for individual settings with:
+
application:set("windowPosition", myappwidth * 1.2, 16)
</translate>
+
application:set("windowModel", "onlyClose")
<source lang="lua">
+
-- application:set("windowModel", "noMaximize") -- doesn't work for me!
print(application:set("cursor","help"))
+
application:set("windowTitle", "App Title")
</source>
+
application:set("minimumSize", myappwidth, myappheight)
 +
application:set("maximumSize", myappwidth, myappheight)
 +
application:set("windowColor", 0, 0, 0)
 +
end
 +
</syntaxhighlight>
 +
 
 +
<syntaxhighlight lang="lua">
 +
-- \\dirName on Windows (could be \/ on Linux - not tested)
 +
application:set("mkDir", application:get("directory","executable").."\\dirName")
 +
</syntaxhighlight>
 +
 
 +
{{Application}}

Latest revision as of 16:22, 31 May 2024

Available since: Gideros 2015.7
Class: Application

Description

Sets the state of the desktop setting provided as string parameter.

application:set(setting,value)

new Gideros 2023.11: implement application:set("statusBar") for Android and iOS
new Gideros 2022.1: implement application:set("wintabMode")

Parameters

setting: (string) the desktop setting
value: (varies) the new setting value(s)

Compatibility table

QT Win32 UWP Android Apple MacOS Apple iOS Apple tvOS Linux HTML
clipboard X X X
cursor X X X X X X
cursorPosition X X
documentDirectory X X X
maximumSize X
minimumSize X
mkDir X X X
statusBar X X
temporaryDirectory X X X
windowColor X
windowModel X
windowPosition X X X
windowSize X X X
windowTitle X X X X
wintabMode X

List of available parameters and settings

To get a list of parameters that can be set use:

print(application:set("help"))
--[[
- windowPosition(x,y)
- windowSize(w,h)
- minimumSize(w,h)
- maximumSize(w,h)
- windowColor(r,g,b)
- windowTitle(text)
- windowModel(type//help)
- cursor(type//help)
- cursorPosition(x,y)
- clipboard(text)
- mkdir(path|dirName//help)
- documentDirectory(path)
- temporaryDirectory(path)
]]

To get help for individual settings use:

print(application:set("cursor","help")) -- eg: cursor
--[[
Accepted value for cursor :
- arrow
- upArrow
- cross
- wait
- IBeam
- sizeVer
- sizeHor
- sizeBDiag
- sizeFDiag
- sizeAll
- blank -- not available on win32
- splitV
- splitH
- pointingHand
- forbidden
- whatsThis
- busy
- openHand -- not available on win32
- closedHand -- not available on win32
- dragCopy -- not available on win32
- dragMove -- not available on win32
- dragLink -- not available on win32
]]
print(application:set("windowModel","help")) -- eg: window mode
--[[
Accepted value for windowModel :
- reset
- stayOnTop
- stayOnBottom
- frameless
- noTitleBar
- noButton
- onlyMinimize
- onlyMaximize
- onlyClose
- noMinimize
- noMaximize
- noClose
- helpButton
]]

Examples

application:set("windowPosition", 64, 64)
application:set("windowColor", 0, 0, 0)
application:set("windowTitle", "My lovely window title")
application:set("cursor", "openHand")
-- global app size
myappleft, myapptop, myappright, myappbot = application:getLogicalBounds()
myappwidth, myappheight = myappright - myappleft, myappbot - myapptop

if application:getDeviceInfo() == "Windows" and not application:isPlayerMode() then
	application:set("windowPosition", myappwidth * 1.2, 16)
	application:set("windowModel", "onlyClose")
--	application:set("windowModel", "noMaximize") -- doesn't work for me!
	application:set("windowTitle", "App Title")
	application:set("minimumSize", myappwidth, myappheight)
	application:set("maximumSize", myappwidth, myappheight)
	application:set("windowColor", 0, 0, 0)
end
-- \\dirName on Windows (could be \/ on Linux - not tested)
application:set("mkDir", application:get("directory","executable").."\\dirName")