2017-09-12 22:42:36 +02:00
<?xml version="1.0" encoding="UTF-8" ?>
2018-02-27 13:40:43 +01:00
<class name= "OS" inherits= "Object" category= "Core" version= "3.1" >
2017-09-12 22:42:36 +02:00
<brief_description >
Operating System functions.
</brief_description>
<description >
Operating System functions. OS Wraps the most common functionality to communicate with the host Operating System, such as: mouse grabbing, mouse cursors, clipboard, video mode, date and time, timers, environment variables, execution of binaries, command line, etc.
</description>
<tutorials >
</tutorials>
<demos >
</demos>
<methods >
<method name= "alert" >
<return type= "void" >
</return>
<argument index= "0" name= "text" type= "String" >
</argument>
<argument index= "1" name= "title" type= "String" default= ""Alert!"" >
</argument>
<description >
Displays a modal dialog box utilizing the host OS.
</description>
</method>
<method name= "can_draw" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if the host OS allows drawing.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "can_use_threads" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if the current host platform is using multiple threads.
2017-09-12 22:42:36 +02:00
</description>
</method>
2018-02-19 10:47:16 +01:00
<method name= "center_window" >
<return type= "void" >
</return>
<description >
2018-04-10 17:05:28 +02:00
Centers the window on the screen if in windowed mode.
2018-02-19 10:47:16 +01:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "delay_msec" qualifiers= "const" >
<return type= "void" >
</return>
<argument index= "0" name= "msec" type= "int" >
</argument>
<description >
2018-04-10 17:05:28 +02:00
Delay execution of the current thread by given milliseconds.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "delay_usec" qualifiers= "const" >
<return type= "void" >
</return>
<argument index= "0" name= "usec" type= "int" >
</argument>
<description >
2018-04-10 17:05:28 +02:00
Delay execution of the current thread by given microseconds.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "dump_memory_to_file" >
<return type= "void" >
</return>
<argument index= "0" name= "file" type= "String" >
</argument>
<description >
Dumps the memory allocation ringlist to a file (only works in debug).
2018-04-10 17:05:28 +02:00
Entry format per line: "Address - Size - Description".
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "dump_resources_to_file" >
<return type= "void" >
</return>
<argument index= "0" name= "file" type= "String" >
</argument>
<description >
Dumps all used resources to file (only works in debug).
2018-04-10 17:05:28 +02:00
Entry format per line: "Resource Type : Resource Location".
2017-09-12 22:42:36 +02:00
At the end of the file is a statistic of all used Resource Types.
</description>
</method>
<method name= "execute" >
<return type= "int" >
</return>
<argument index= "0" name= "path" type= "String" >
</argument>
<argument index= "1" name= "arguments" type= "PoolStringArray" >
</argument>
<argument index= "2" name= "blocking" type= "bool" >
</argument>
<argument index= "3" name= "output" type= "Array" default= "[ ]" >
</argument>
<description >
2018-01-21 00:45:21 +01:00
Execute the file at the given path, optionally blocking until it returns.
Platform path resolution will take place. The resolved file must exist and be executable.
Returns a process id.
For example:
[codeblock]
var output = []
var pid = OS.execute('ls', [], true, output)
[/codeblock]
If you wish to access a shell built-in or perform a composite command, a platform specific shell can be invoked. For example:
[codeblock]
var pid = OS.execute('CMD.exe', ['/C', 'cd %TEMP% & & dir'], true, output)
[/codeblock]
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "find_scancode_from_string" qualifiers= "const" >
<return type= "int" >
</return>
<argument index= "0" name= "string" type= "String" >
</argument>
<description >
Returns the scancode of the given string (e.g. "Escape")
</description>
</method>
2018-04-10 10:12:42 +02:00
<method name= "get_audio_driver_count" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2018-04-10 17:05:28 +02:00
Returns the total number of available audio drivers.
2018-04-10 10:12:42 +02:00
</description>
</method>
<method name= "get_audio_driver_name" qualifiers= "const" >
<return type= "String" >
</return>
2018-03-23 18:57:58 +01:00
<argument index= "0" name= "driver" type= "int" >
2018-04-10 10:12:42 +02:00
</argument>
<description >
2018-04-10 17:05:28 +02:00
Returns the audio driver name for the given index.
2018-04-10 10:12:42 +02:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "get_cmdline_args" >
<return type= "PoolStringArray" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the command line arguments passed to the engine.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_date" qualifiers= "const" >
<return type= "Dictionary" >
</return>
<argument index= "0" name= "utc" type= "bool" default= "false" >
</argument>
<description >
Returns current date as a dictionary of keys: year, month, day, weekday, dst (daylight savings time).
</description>
</method>
<method name= "get_datetime" qualifiers= "const" >
<return type= "Dictionary" >
</return>
<argument index= "0" name= "utc" type= "bool" default= "false" >
</argument>
<description >
Returns current datetime as a dictionary of keys: year, month, day, weekday, dst (daylight savings time), hour, minute, second.
</description>
</method>
<method name= "get_datetime_from_unix_time" qualifiers= "const" >
<return type= "Dictionary" >
</return>
<argument index= "0" name= "unix_time_val" type= "int" >
</argument>
<description >
Get a dictionary of time values when given epoch time.
Dictionary Time values will be a union of values from [method get_time] and [method get_date] dictionaries (with the exception of dst = day light standard time, as it cannot be determined from epoch).
</description>
</method>
<method name= "get_dynamic_memory_usage" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the total amount of dynamic memory used (only works in debug).
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_environment" qualifiers= "const" >
<return type= "String" >
</return>
<argument index= "0" name= "environment" type= "String" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Returns an environment variable.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_executable_path" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the path to the current engine executable.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_latin_keyboard_variant" qualifiers= "const" >
<return type= "String" >
</return>
<description >
Returns the current latin keyboard variant as a String.
2017-10-24 19:32:40 +02:00
Possible return values are: "QWERTY", "AZERTY", "QZERTY", "DVORAK", "NEO", "COLEMAK" or "ERROR".
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_locale" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the host OS locale.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_model_name" qualifiers= "const" >
<return type= "String" >
</return>
<description >
Returns the model name of the current device.
</description>
</method>
<method name= "get_name" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the name of the host OS. Possible values are: "Android", "Haiku", "iOS", "HTML5", "OSX", "Server", "Windows", "UWP", "X11".
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_power_percent_left" >
<return type= "int" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the amount of battery left in the device as a percentage.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_power_seconds_left" >
<return type= "int" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the time in seconds before the device runs out of battery.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_power_state" >
2017-09-16 01:46:14 +02:00
<return type= "int" enum= "OS.PowerState" >
2017-09-12 22:42:36 +02:00
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the current state of the device regarding battery and power. See [code]POWERSTATE_*[/code] constants.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_process_id" qualifiers= "const" >
<return type= "int" >
</return>
<description >
Returns the game process ID
</description>
</method>
<method name= "get_processor_count" qualifiers= "const" >
<return type= "int" >
</return>
<description >
Returns the number of cores available in the host machine.
</description>
</method>
2018-02-19 10:47:16 +01:00
<method name= "get_real_window_size" qualifiers= "const" >
<return type= "Vector2" >
</return>
<description >
2018-04-10 17:05:28 +02:00
Returns the window size including decorations like window borders.
2018-02-19 10:47:16 +01:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "get_scancode_string" qualifiers= "const" >
<return type= "String" >
</return>
<argument index= "0" name= "code" type= "int" >
</argument>
<description >
Returns the given scancode as a string (e.g. Return values: "Escape", "Shift+Escape").
</description>
</method>
<method name= "get_screen_count" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the number of displays attached to the host machine.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_screen_dpi" qualifiers= "const" >
<return type= "int" >
</return>
<argument index= "0" name= "screen" type= "int" default= "-1" >
</argument>
<description >
Returns the dots per inch density of the specified screen.
On Android Devices, the actual screen densities are grouped into six generalized densities:
ldpi - 120 dpi
mdpi - 160 dpi
hdpi - 240 dpi
xhdpi - 320 dpi
xxhdpi - 480 dpi
xxxhdpi - 640 dpi
</description>
</method>
<method name= "get_screen_position" qualifiers= "const" >
<return type= "Vector2" >
</return>
<argument index= "0" name= "screen" type= "int" default= "-1" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Returns the position of the specified screen by index. If no screen index is provided, the current screen will be used.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_screen_size" qualifiers= "const" >
<return type= "Vector2" >
</return>
<argument index= "0" name= "screen" type= "int" default= "-1" >
</argument>
<description >
Returns the dimensions in pixels of the specified screen.
</description>
</method>
<method name= "get_splash_tick_msec" qualifiers= "const" >
<return type= "int" >
</return>
<description >
</description>
</method>
<method name= "get_static_memory_peak_usage" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the max amount of static memory used (only works in debug).
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_static_memory_usage" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2017-10-03 05:54:50 +02:00
Returns the amount of static memory being used by the program in bytes.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_system_dir" qualifiers= "const" >
<return type= "String" >
</return>
2017-09-17 18:57:13 +02:00
<argument index= "0" name= "dir" type= "int" enum= "OS.SystemDir" >
2017-09-12 22:42:36 +02:00
</argument>
<description >
2017-10-08 19:33:17 +02:00
Returns the actual path to commonly used folders across different platforms. Available locations are specified in [OS.SystemDir].
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_system_time_secs" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2017-10-03 05:54:50 +02:00
Returns the epoch time of the operating system in seconds.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_ticks_msec" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the amount of time passed in milliseconds since the engine started.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_time" qualifiers= "const" >
<return type= "Dictionary" >
</return>
<argument index= "0" name= "utc" type= "bool" default= "false" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Returns current time as a dictionary of keys: hour, minute, second.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_time_zone_info" qualifiers= "const" >
<return type= "Dictionary" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns the current time zone as a dictionary with the keys: bias and name.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_unique_id" qualifiers= "const" >
<return type= "String" >
</return>
<description >
2018-01-20 16:17:39 +01:00
Returns a string that is unique to the device.
Returns empty string on HTML5 and UWP which are not supported yet.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_unix_time" qualifiers= "const" >
<return type= "int" >
</return>
<description >
2018-04-10 17:05:28 +02:00
Returns the current unix epoch timestamp.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "get_unix_time_from_datetime" qualifiers= "const" >
<return type= "int" >
</return>
<argument index= "0" name= "datetime" type= "Dictionary" >
</argument>
<description >
Get an epoch time value from a dictionary of time values.
[code]datetime[/code] must be populated with the following keys: year, month, day, hour, minute, second.
You can pass the output from [method get_datetime_from_unix_time] directly into this function. Daylight savings time (dst), if present, is ignored.
</description>
</method>
2017-11-24 09:16:27 +01:00
<method name= "get_user_data_dir" qualifiers= "const" >
<return type= "String" >
</return>
<description >
Returns the absolute directory path where user data is written ([code]user://[/code]).
2018-02-23 15:58:14 +01:00
On Linux, this is [code]~/.local/share/godot/app_userdata/[project_name][/code], or [code]~/.local/share/[custom_name][/code] if [code]use_custom_user_dir[/code] is set.
On macOS, this is [code]~/Library/Application Support/Godot/app_userdata/[project_name][/code], or [code]~/Library/Application Support/[custom_name][/code] if [code]use_custom_user_dir[/code] is set.
On Windows, this is [code]%APPDATA%/Godot/app_userdata/[project_name][/code], or [code]%APPDATA%/[custom_name][/code] if [code]use_custom_user_dir[/code] is set.
If the project name is empty, [code]user://[/code] falls back to [code]res://[/code].
2017-11-24 09:16:27 +01:00
</description>
</method>
2018-04-10 10:12:42 +02:00
<method name= "get_video_driver_count" qualifiers= "const" >
<return type= "int" >
</return>
<description >
</description>
</method>
<method name= "get_video_driver_name" qualifiers= "const" >
<return type= "String" >
</return>
2018-03-23 18:57:58 +01:00
<argument index= "0" name= "driver" type= "int" >
2018-04-10 10:12:42 +02:00
</argument>
<description >
</description>
</method>
2017-10-11 23:54:43 +02:00
<method name= "get_virtual_keyboard_height" >
<return type= "int" >
</return>
<description >
2018-04-10 17:05:28 +02:00
Returns the on-screen keyboard's height in pixels. Returns 0 if there is no keyboard or it is currently hidden.
2017-10-11 23:54:43 +02:00
</description>
</method>
2018-05-12 09:38:00 +02:00
<method name= "get_window_safe_area" qualifiers= "const" >
<return type= "Rect2" >
</return>
<description >
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "has_environment" qualifiers= "const" >
<return type= "bool" >
</return>
<argument index= "0" name= "environment" type= "String" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if an environment variable exists.
2017-09-12 22:42:36 +02:00
</description>
</method>
2017-10-11 23:54:43 +02:00
<method name= "has_feature" qualifiers= "const" >
<return type= "bool" >
</return>
<argument index= "0" name= "tag_name" type= "String" >
</argument>
<description >
2018-04-10 17:05:28 +02:00
Returns [code]true[/code] if the feature for the given feature tag is supported in the currently running instance, depending on platform, build etc. Can be used to check whether you're currently running a debug build, on a certain platform or arch, etc. See feature tags documentation.
2017-10-11 23:54:43 +02:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "has_touchscreen_ui_hint" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if the device has a touchscreen or emulates one.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "has_virtual_keyboard" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if the platform has a virtual keyboard, [code]false[/code] otherwise.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "hide_virtual_keyboard" >
<return type= "void" >
</return>
<description >
Hides the virtual keyboard if it is shown, does nothing otherwise.
</description>
</method>
<method name= "is_debug_build" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-03 05:54:50 +02:00
Returns [code]true[/code] if the build is a debug build.
Returns [code]true[/code] when running in the editor.
Returns [code]false[/code] if the build is a release build.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "is_ok_left_and_cancel_right" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-11 23:54:43 +02:00
Returns [code]true[/code] if the "Okay" button should appear on the left and "Cancel" on the right.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "is_scancode_unicode" qualifiers= "const" >
<return type= "bool" >
</return>
<argument index= "0" name= "code" type= "int" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if the input code has a unicode character.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "is_stdout_verbose" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if the engine was executed with -v (verbose stdout).
2017-09-12 22:42:36 +02:00
</description>
</method>
2017-10-02 16:09:24 +02:00
<method name= "is_userfs_persistent" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
If [code]true[/code], the [code]user://[/code] file system is persistent, so that its state is the same after a player quits and starts the game again. Relevant to the HTML5 platform, where this persistence may be unavailable.
</description>
</method>
2018-02-19 10:47:16 +01:00
<method name= "is_window_always_on_top" qualifiers= "const" >
<return type= "bool" >
</return>
<description >
2018-04-10 17:05:28 +02:00
Returns [code]true[/code] if the window should always be on top of other windows.
2018-02-19 10:47:16 +01:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "kill" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "pid" type= "int" >
</argument>
<description >
Kill a process ID (this method can be used to kill processes that were not spawned by the game).
</description>
</method>
<method name= "native_video_is_playing" >
<return type= "bool" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Returns [code]true[/code] if native video is playing.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "native_video_pause" >
<return type= "void" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Pauses native video playback.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "native_video_play" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "path" type= "String" >
</argument>
<argument index= "1" name= "volume" type= "float" >
</argument>
<argument index= "2" name= "audio_track" type= "String" >
</argument>
<argument index= "3" name= "subtitle_track" type= "String" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Plays native video from the specified path, at the given volume and with audio and subtitle tracks.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "native_video_stop" >
<return type= "void" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Stops native video playback.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "native_video_unpause" >
<return type= "void" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Resumes native video playback.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "print_all_resources" >
<return type= "void" >
</return>
<argument index= "0" name= "tofile" type= "String" default= """" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Shows all resources in the game. Optionally the list can be written to a file.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "print_all_textures_by_size" >
<return type= "void" >
</return>
<description >
2017-10-08 19:33:17 +02:00
Shows the list of loaded textures sorted by size in memory.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "print_resources_by_type" >
<return type= "void" >
</return>
<argument index= "0" name= "types" type= "PoolStringArray" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Shows the number of resources loaded by the game of the given types.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "print_resources_in_use" >
<return type= "void" >
</return>
<argument index= "0" name= "short" type= "bool" default= "false" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Shows all resources currently used by the game.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "request_attention" >
<return type= "void" >
</return>
<description >
Request the user attention to the window. It'll flash the taskbar button on Windows or bounce the dock icon on OSX.
</description>
</method>
<method name= "set_icon" >
<return type= "void" >
</return>
<argument index= "0" name= "icon" type= "Image" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Sets the game's icon.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "set_ime_position" >
<return type= "void" >
</return>
<argument index= "0" name= "position" type= "Vector2" >
</argument>
<description >
</description>
</method>
<method name= "set_thread_name" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "name" type= "String" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Sets the name of the current thread.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "set_use_file_access_save_and_swap" >
<return type= "void" >
</return>
<argument index= "0" name= "enabled" type= "bool" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Enables backup saves if [code]enabled[/code] is [code]true[/code].
2017-09-12 22:42:36 +02:00
</description>
</method>
2018-02-19 10:47:16 +01:00
<method name= "set_window_always_on_top" >
<return type= "void" >
</return>
<argument index= "0" name= "enabled" type= "bool" >
</argument>
<description >
2018-04-10 17:05:28 +02:00
Sets whether the window should always be on top.
2018-02-19 10:47:16 +01:00
</description>
</method>
2017-09-12 22:42:36 +02:00
<method name= "set_window_title" >
<return type= "void" >
</return>
<argument index= "0" name= "title" type= "String" >
</argument>
<description >
Sets the window title to the specified string.
</description>
</method>
<method name= "shell_open" >
<return type= "int" enum= "Error" >
</return>
<argument index= "0" name= "uri" type= "String" >
</argument>
<description >
2017-10-08 19:33:17 +02:00
Requests the OS to open a resource with the most appropriate program. For example.
[code]OS.shell_open("C:\\Users\name\Downloads")[/code] on Windows opens the file explorer at the downloads folders of the user.
[code]OS.shell_open("http://godotengine.org")[/code] opens the default web browser on the official Godot website.
2017-09-12 22:42:36 +02:00
</description>
</method>
<method name= "show_virtual_keyboard" >
<return type= "void" >
</return>
<argument index= "0" name= "existing_text" type= "String" default= """" >
</argument>
<description >
Shows the virtual keyboard if the platform has one. The [i]existing_text[/i] parameter is useful for implementing your own LineEdit, as it tells the virtual keyboard what text has already been typed (the virtual keyboard uses it for auto-correct and predictions).
</description>
</method>
</methods>
2018-01-11 23:38:35 +01:00
<members >
<member name= "clipboard" type= "String" setter= "set_clipboard" getter= "get_clipboard" >
The clipboard from the host OS. Might be unavailable on some platforms.
</member>
<member name= "current_screen" type= "int" setter= "set_current_screen" getter= "get_current_screen" >
The current screen index (starting from 0).
</member>
<member name= "exit_code" type= "int" setter= "set_exit_code" getter= "get_exit_code" >
2018-04-10 17:05:28 +02:00
The exit code passed to the OS when the main loop exits.
2018-01-11 23:38:35 +01:00
</member>
<member name= "keep_screen_on" type= "bool" setter= "set_keep_screen_on" getter= "is_keep_screen_on" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] the engine tries to keep the screen on while the game is running. Useful on mobile.
2018-01-11 23:38:35 +01:00
</member>
<member name= "low_processor_usage_mode" type= "bool" setter= "set_low_processor_usage_mode" getter= "is_in_low_processor_usage_mode" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] the engine optimizes for low processor usage by only refreshing the screen if needed. Can improve battery consumption on mobile.
2018-01-11 23:38:35 +01:00
</member>
2018-05-12 09:38:00 +02:00
<member name= "screen_orientation" type= "int" setter= "set_screen_orientation" getter= "get_screen_orientation" enum= "_OS.ScreenOrientation" >
2018-01-11 23:38:35 +01:00
The current screen orientation.
</member>
<member name= "vsync_enabled" type= "bool" setter= "set_use_vsync" getter= "is_vsync_enabled" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] vertical synchronization (Vsync) is enabled.
2018-01-11 23:38:35 +01:00
</member>
<member name= "window_borderless" type= "bool" setter= "set_borderless_window" getter= "get_borderless_window" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] removes the window frame.
2018-01-11 23:38:35 +01:00
</member>
<member name= "window_fullscreen" type= "bool" setter= "set_window_fullscreen" getter= "is_window_fullscreen" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] the window is fullscreen.
2018-01-11 23:38:35 +01:00
</member>
<member name= "window_maximized" type= "bool" setter= "set_window_maximized" getter= "is_window_maximized" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] the window is maximized.
2018-01-11 23:38:35 +01:00
</member>
<member name= "window_minimized" type= "bool" setter= "set_window_minimized" getter= "is_window_minimized" >
2018-04-10 17:05:28 +02:00
If [code]true[/code] the window is minimized.
2018-01-11 23:38:35 +01:00
</member>
2018-05-12 09:38:00 +02:00
<member name= "window_per_pixel_transparency_enabled" type= "bool" setter= "set_window_per_pixel_transparency_enabled" getter= "get_window_per_pixel_transparency_enabled" >
</member>
2018-01-11 23:38:35 +01:00
<member name= "window_position" type= "Vector2" setter= "set_window_position" getter= "get_window_position" >
The window position relative to the screen, the origin is the top left corner, +Y axis goes to the bottom and +X axis goes to the right.
</member>
<member name= "window_resizable" type= "bool" setter= "set_window_resizable" getter= "is_window_resizable" >
If [code]true[/code], the window is resizable by the user.
</member>
<member name= "window_size" type= "Vector2" setter= "set_window_size" getter= "get_window_size" >
The size of the window (without counting window manager decorations).
</member>
</members>
2017-09-12 22:42:36 +02:00
<constants >
2017-11-24 23:16:30 +01:00
<constant name= "DAY_SUNDAY" value= "0" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Sunday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "DAY_MONDAY" value= "1" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Monday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "DAY_TUESDAY" value= "2" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Tuesday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "DAY_WEDNESDAY" value= "3" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Wednesday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "DAY_THURSDAY" value= "4" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Thursday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "DAY_FRIDAY" value= "5" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Friday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "DAY_SATURDAY" value= "6" enum= "Weekday" >
2018-04-10 17:05:28 +02:00
Saturday.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_JANUARY" value= "1" enum= "Month" >
2018-04-10 17:05:28 +02:00
January.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_FEBRUARY" value= "2" enum= "Month" >
2018-04-10 17:05:28 +02:00
February.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_MARCH" value= "3" enum= "Month" >
2018-04-10 17:05:28 +02:00
March.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_APRIL" value= "4" enum= "Month" >
2018-04-10 17:05:28 +02:00
April.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_MAY" value= "5" enum= "Month" >
2018-04-10 17:05:28 +02:00
May.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_JUNE" value= "6" enum= "Month" >
2018-04-10 17:05:28 +02:00
June.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_JULY" value= "7" enum= "Month" >
2018-04-10 17:05:28 +02:00
July.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_AUGUST" value= "8" enum= "Month" >
2018-04-10 17:05:28 +02:00
August.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_SEPTEMBER" value= "9" enum= "Month" >
2018-04-10 17:05:28 +02:00
September.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_OCTOBER" value= "10" enum= "Month" >
2018-04-10 17:05:28 +02:00
October.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_NOVEMBER" value= "11" enum= "Month" >
2018-04-10 17:05:28 +02:00
November.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "MONTH_DECEMBER" value= "12" enum= "Month" >
2018-04-10 17:05:28 +02:00
December.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_LANDSCAPE" value= "0" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Landscape screen orientation.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_PORTRAIT" value= "1" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Portrait screen orientation.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_REVERSE_LANDSCAPE" value= "2" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Reverse landscape screen orientation.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_REVERSE_PORTRAIT" value= "3" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Reverse portrait screen orientation.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_SENSOR_LANDSCAPE" value= "4" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Uses landscape or reverse landscape based on the hardware sensor.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_SENSOR_PORTRAIT" value= "5" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Uses portrait or reverse portrait based on the hardware sensor.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SCREEN_ORIENTATION_SENSOR" value= "6" enum= "ScreenOrientation" >
2018-04-10 17:05:28 +02:00
Uses most suitable orientation based on the hardware sensor.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_DESKTOP" value= "0" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Desktop directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_DCIM" value= "1" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
DCIM (Digital Camera Images) directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_DOCUMENTS" value= "2" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Documents directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_DOWNLOADS" value= "3" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Downloads directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_MOVIES" value= "4" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Movies directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_MUSIC" value= "5" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Music directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_PICTURES" value= "6" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Pictures directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "SYSTEM_DIR_RINGTONES" value= "7" enum= "SystemDir" >
2018-04-10 17:05:28 +02:00
Ringtones directory path.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "POWERSTATE_UNKNOWN" value= "0" enum= "PowerState" >
2018-04-10 17:05:28 +02:00
Unknown powerstate.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "POWERSTATE_ON_BATTERY" value= "1" enum= "PowerState" >
2018-04-10 17:05:28 +02:00
Unplugged, running on battery.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "POWERSTATE_NO_BATTERY" value= "2" enum= "PowerState" >
2018-04-10 17:05:28 +02:00
Plugged in, no battery available.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "POWERSTATE_CHARGING" value= "3" enum= "PowerState" >
2018-04-10 17:05:28 +02:00
Plugged in, battery charging.
2017-09-12 22:42:36 +02:00
</constant>
2017-11-24 23:16:30 +01:00
<constant name= "POWERSTATE_CHARGED" value= "4" enum= "PowerState" >
2018-04-10 17:05:28 +02:00
Plugged in, battery fully charged.
2017-09-12 22:42:36 +02:00
</constant>
</constants>
</class>