summaryrefslogtreecommitdiff
path: root/doc/classes/OS.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/classes/OS.xml')
-rw-r--r--doc/classes/OS.xml480
1 files changed, 9 insertions, 471 deletions
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index 6ce2d4bcbb..db79ee7765 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -9,24 +9,6 @@
<tutorials>
</tutorials>
<methods>
- <method name="alert">
- <return type="void">
- </return>
- <argument index="0" name="text" type="String">
- </argument>
- <argument index="1" name="title" type="String" default="&quot;Alert!&quot;">
- </argument>
- <description>
- Displays a modal dialog box using the host OS' facilities. Execution is blocked until the dialog is closed.
- </description>
- </method>
- <method name="can_draw" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the host OS allows drawing.
- </description>
- </method>
<method name="can_use_threads" qualifiers="const">
<return type="bool">
</return>
@@ -34,13 +16,6 @@
Returns [code]true[/code] if the current host platform is using multiple threads.
</description>
</method>
- <method name="center_window">
- <return type="void">
- </return>
- <description>
- Centers the window on the screen if in windowed mode.
- </description>
- </method>
<method name="close_midi_inputs">
<return type="void">
</return>
@@ -124,29 +99,13 @@
[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows.
</description>
</method>
- <method name="find_scancode_from_string" qualifiers="const">
+ <method name="find_keycode_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>
- <method name="get_audio_driver_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the total number of available audio drivers.
- </description>
- </method>
- <method name="get_audio_driver_name" qualifiers="const">
- <return type="String">
- </return>
- <argument index="0" name="driver" type="int">
- </argument>
- <description>
- Returns the audio driver name for the given index.
+ Returns the keycode of the given string (e.g. "Escape").
</description>
</method>
<method name="get_cmdline_args">
@@ -165,13 +124,6 @@
[b]Note:[/b] This method is implemented on Linux, macOS and Windows.
</description>
</method>
- <method name="get_current_video_driver" qualifiers="const">
- <return type="int" enum="OS.VideoDriver">
- </return>
- <description>
- Returns the currently used video driver, using one of the values from [enum VideoDriver].
- </description>
- </method>
<method name="get_date" qualifiers="const">
<return type="Dictionary">
</return>
@@ -224,31 +176,14 @@
[b]Note:[/b] This method is implemented on Android.
</description>
</method>
- <method name="get_ime_selection" qualifiers="const">
- <return type="Vector2">
- </return>
- <description>
- Returns the IME cursor position (the currently-edited portion of the string) relative to the characters in the composition string.
- [constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to notify it of changes to the IME cursor position.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="get_ime_text" qualifiers="const">
- <return type="String">
- </return>
- <description>
- Returns the IME intermediate composition string.
- [constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to notify it of changes to the IME composition string.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="get_latin_keyboard_variant" qualifiers="const">
+ <method name="get_keycode_string" qualifiers="const">
<return type="String">
</return>
+ <argument index="0" name="code" type="int">
+ </argument>
<description>
- Returns the current latin keyboard variant as a String.
- Possible return values are: [code]"QWERTY"[/code], [code]"AZERTY"[/code], [code]"QZERTY"[/code], [code]"DVORAK"[/code], [code]"NEO"[/code], [code]"COLEMAK"[/code] or [code]"ERROR"[/code].
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows. Returns [code]"QWERTY"[/code] on unsupported platforms.
+ Returns the given keycode as a string (e.g. Return values: [code]"Escape"[/code], [code]"Shift+Escape"[/code]).
+ See also [member InputEventKey.keycode] and [method InputEventKey.get_keycode_with_modifiers].
</description>
</method>
<method name="get_locale" qualifiers="const">
@@ -288,67 +223,6 @@
Returns the number of threads available on the host machine.
</description>
</method>
- <method name="get_real_window_size" qualifiers="const">
- <return type="Vector2">
- </return>
- <description>
- Returns the window size including decorations like window borders.
- </description>
- </method>
- <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: [code]"Escape"[/code], [code]"Shift+Escape"[/code]).
- See also [member InputEventKey.scancode] and [method InputEventKey.get_scancode_with_modifiers].
- </description>
- </method>
- <method name="get_screen_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the number of displays attached to the host machine.
- </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. If [code]screen[/code] is [/code]-1[/code] (the default value), the current screen will be used.
- On Android devices, the actual screen densities are grouped into six generalized densities:
- [codeblock]
- ldpi - 120 dpi
- mdpi - 160 dpi
- hdpi - 240 dpi
- xhdpi - 320 dpi
- xxhdpi - 480 dpi
- xxxhdpi - 640 dpi
- [/codeblock]
- [b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows. Returns [code]72[/code] on unsupported platforms.
- </description>
- </method>
- <method name="get_screen_position" qualifiers="const">
- <return type="Vector2">
- </return>
- <argument index="0" name="screen" type="int" default="-1">
- </argument>
- <description>
- Returns the position of the specified screen by index. If [code]screen[/code] is [/code]-1[/code] (the default value), the current screen will be used.
- </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. If [code]screen[/code] is [/code]-1[/code] (the default value), the current screen will be used.
- </description>
- </method>
<method name="get_splash_tick_msec" qualifiers="const">
<return type="int">
</return>
@@ -461,84 +335,6 @@
If the project name is empty, [code]user://[/code] falls back to [code]res://[/code].
</description>
</method>
- <method name="get_video_driver_count" qualifiers="const">
- <return type="int">
- </return>
- <description>
- Returns the number of video drivers supported on the current platform.
- </description>
- </method>
- <method name="get_video_driver_name" qualifiers="const">
- <return type="String">
- </return>
- <argument index="0" name="driver" type="int" enum="OS.VideoDriver">
- </argument>
- <description>
- Returns the name of the video driver matching the given [code]driver[/code] index. This index is a value from [enum VideoDriver], and you can use [method get_current_video_driver] to get the current backend's index.
- </description>
- </method>
- <method name="get_virtual_keyboard_height">
- <return type="int">
- </return>
- <description>
- Returns the on-screen keyboard's height in pixels. Returns 0 if there is no keyboard or if it is currently hidden.
- </description>
- </method>
- <method name="get_window_safe_area" qualifiers="const">
- <return type="Rect2">
- </return>
- <description>
- Returns unobscured area of the window where interactive controls should be rendered.
- </description>
- </method>
- <method name="global_menu_add_item">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <argument index="1" name="label" type="String">
- </argument>
- <argument index="2" name="id" type="Variant">
- </argument>
- <argument index="3" name="meta" type="Variant">
- </argument>
- <description>
- Add a new item with text "label" to global menu. Use "_dock" menu to add item to the macOS dock icon menu.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="global_menu_add_separator">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <description>
- Add a separator between items. Separators also occupy an index.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="global_menu_clear">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <description>
- Clear the global menu, in effect removing all items.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
- <method name="global_menu_remove_item">
- <return type="void">
- </return>
- <argument index="0" name="menu" type="String">
- </argument>
- <argument index="1" name="idx" type="int">
- </argument>
- <description>
- Removes the item at index "idx" from the global menu. Note that the indexes of items after the removed item are going to be shifted by one.
- [b]Note:[/b] This method is implemented on macOS.
- </description>
- </method>
<method name="has_environment" qualifiers="const">
<return type="bool">
</return>
@@ -558,27 +354,6 @@
[b]Note:[/b] Tag names are case-sensitive.
</description>
</method>
- <method name="has_touchscreen_ui_hint" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the device has a touchscreen or emulates one.
- </description>
- </method>
- <method name="has_virtual_keyboard" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the platform has a virtual keyboard, [code]false[/code] otherwise.
- </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>
@@ -588,20 +363,13 @@
To check whether the Godot binary used to run the project is an export template (debug or release), use [code]OS.has_feature("standalone")[/code] instead.
</description>
</method>
- <method name="is_ok_left_and_cancel_right" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the [b]OK[/b] button should appear on the left and [b]Cancel[/b] on the right.
- </description>
- </method>
- <method name="is_scancode_unicode" qualifiers="const">
+ <method name="is_keycode_unicode" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="code" type="int">
</argument>
<description>
- Returns [code]true[/code] if the input scancode corresponds to a Unicode character.
+ Returns [code]true[/code] if the input keycode corresponds to a Unicode character.
</description>
</method>
<method name="is_stdout_verbose" qualifiers="const">
@@ -618,21 +386,6 @@
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>
- <method name="is_window_always_on_top" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the window should always be on top of other windows.
- </description>
- </method>
- <method name="is_window_focused" qualifiers="const">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if the window is currently focused.
- [b]Note:[/b] Only implemented on desktop platforms. On other platforms, it will always return [code]true[/code].
- </description>
- </method>
<method name="kill">
<return type="int" enum="Error">
</return>
@@ -644,62 +397,6 @@
[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows.
</description>
</method>
- <method name="move_window_to_foreground">
- <return type="void">
- </return>
- <description>
- Moves the window to the front.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="native_video_is_playing">
- <return type="bool">
- </return>
- <description>
- Returns [code]true[/code] if native video is playing.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
- <method name="native_video_pause">
- <return type="void">
- </return>
- <description>
- Pauses native video playback.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </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>
- Plays native video from the specified path, at the given volume and with audio and subtitle tracks.
- [b]Note:[/b] This method is implemented on Android and iOS, and the current Android implementation does not support the [code]volume[/code], [code]audio_track[/code] and [code]subtitle_track[/code] options.
- </description>
- </method>
- <method name="native_video_stop">
- <return type="void">
- </return>
- <description>
- Stops native video playback.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
- <method name="native_video_unpause">
- <return type="void">
- </return>
- <description>
- Resumes native video playback.
- [b]Note:[/b] This method is implemented on Android and iOS.
- </description>
- </method>
<method name="open_midi_inputs">
<return type="void">
</return>
@@ -742,14 +439,6 @@
Shows all resources currently used by the game.
</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.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
<method name="request_permission">
<return type="bool">
</return>
@@ -767,51 +456,6 @@
[b]Note:[/b] This method is implemented on Android.
</description>
</method>
- <method name="set_icon">
- <return type="void">
- </return>
- <argument index="0" name="icon" type="Image">
- </argument>
- <description>
- Sets the game's icon using an [Image] resource.
- The same image is used for window caption, taskbar/dock and window selection dialog. Image is scaled as needed.
- [b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_ime_active">
- <return type="void">
- </return>
- <argument index="0" name="active" type="bool">
- </argument>
- <description>
- Sets whether IME input mode should be enabled.
- If active IME handles key events before the application and creates an composition string and suggestion list.
- Application can retrieve the composition status by using [method get_ime_selection] and [method get_ime_text] functions.
- Completed composition string is committed when input is finished.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_ime_position">
- <return type="void">
- </return>
- <argument index="0" name="position" type="Vector2">
- </argument>
- <description>
- Sets position of IME suggestion list popup (in window coordinates).
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <method name="set_native_icon">
- <return type="void">
- </return>
- <argument index="0" name="filename" type="String">
- </argument>
- <description>
- Sets the game's icon using a multi-size platform-specific icon file ([code]*.ico[/code] on Windows and [code]*.icns[/code] on macOS).
- Appropriate size sub-icons are used for window caption, taskbar/dock and window selection dialog.
- [b]Note:[/b] This method is implemented on macOS and Windows.
- </description>
- </method>
<method name="set_thread_name">
<return type="int" enum="Error">
</return>
@@ -830,27 +474,6 @@
Enables backup saves if [code]enabled[/code] is [code]true[/code].
</description>
</method>
- <method name="set_window_always_on_top">
- <return type="void">
- </return>
- <argument index="0" name="enabled" type="bool">
- </argument>
- <description>
- Sets whether the window should always be on top.
- [b]Note:[/b] This method is implemented on Linux, macOS and Windows.
- </description>
- </method>
- <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.
- [b]Note:[/b] This should be used sporadically. Don't set this every frame, as that will negatively affect performance on some window managers.
- [b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows.
- </description>
- </method>
<method name="shell_open">
<return type="int" enum="Error">
</return>
@@ -864,82 +487,18 @@
[b]Note:[/b] This method is implemented on Android, iOS, HTML5, Linux, macOS and Windows.
</description>
</method>
- <method name="show_virtual_keyboard">
- <return type="void">
- </return>
- <argument index="0" name="existing_text" type="String" default="&quot;&quot;">
- </argument>
- <description>
- Shows the virtual keyboard if the platform has one. The [code]existing_text[/code] 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).
- [b]Note:[/b] This method is implemented on Android, iOS and UWP.
- </description>
- </method>
</methods>
<members>
- <member name="clipboard" type="String" setter="set_clipboard" getter="get_clipboard" default="&quot;&quot;">
- 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" default="0">
- The current screen index (starting from 0).
- </member>
<member name="exit_code" type="int" setter="set_exit_code" getter="get_exit_code" default="0">
The exit code passed to the OS when the main loop exits. By convention, an exit code of [code]0[/code] indicates success whereas a non-zero exit code indicates an error. For portability reasons, the exit code should be set between 0 and 125 (inclusive).
[b]Note:[/b] This value will be ignored if using [method SceneTree.quit] with an [code]exit_code[/code] argument passed.
</member>
- <member name="keep_screen_on" type="bool" setter="set_keep_screen_on" getter="is_keep_screen_on" default="true">
- If [code]true[/code], the engine tries to keep the screen on while the game is running. Useful on mobile.
- </member>
<member name="low_processor_usage_mode" type="bool" setter="set_low_processor_usage_mode" getter="is_in_low_processor_usage_mode" default="false">
If [code]true[/code], the engine optimizes for low processor usage by only refreshing the screen if needed. Can improve battery consumption on mobile.
</member>
<member name="low_processor_usage_mode_sleep_usec" type="int" setter="set_low_processor_usage_mode_sleep_usec" getter="get_low_processor_usage_mode_sleep_usec" default="6900">
The amount of sleeping between frames when the low-processor usage mode is enabled (in microseconds). Higher values will result in lower CPU usage.
</member>
- <member name="max_window_size" type="Vector2" setter="set_max_window_size" getter="get_max_window_size" default="Vector2( 0, 0 )">
- The maximum size of the window (without counting window manager decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to reset to the system default value.
- </member>
- <member name="min_window_size" type="Vector2" setter="set_min_window_size" getter="get_min_window_size" default="Vector2( 0, 0 )">
- The minimum size of the window (without counting window manager decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to reset to the system default value.
- </member>
- <member name="screen_orientation" type="int" setter="set_screen_orientation" getter="get_screen_orientation" enum="_OS.ScreenOrientation" default="0">
- The current screen orientation.
- </member>
- <member name="vsync_enabled" type="bool" setter="set_use_vsync" getter="is_vsync_enabled" default="true">
- If [code]true[/code], vertical synchronization (Vsync) is enabled.
- </member>
- <member name="vsync_via_compositor" type="bool" setter="set_vsync_via_compositor" getter="is_vsync_via_compositor_enabled" default="false">
- If [code]true[/code] and [code]vsync_enabled[/code] is true, the operating system's window compositor will be used for vsync when the compositor is enabled and the game is in windowed mode.
- [b]Note:[/b] This option is experimental and meant to alleviate stutter experienced by some users. However, some users have experienced a Vsync framerate halving (e.g. from 60 FPS to 30 FPS) when using it.
- [b]Note:[/b] This property is only implemented on Windows.
- </member>
- <member name="window_borderless" type="bool" setter="set_borderless_window" getter="get_borderless_window" default="false">
- If [code]true[/code], removes the window frame.
- [b]Note:[/b] Setting [code]window_borderless[/code] to [code]false[/code] disables per-pixel transparency.
- </member>
- <member name="window_fullscreen" type="bool" setter="set_window_fullscreen" getter="is_window_fullscreen" default="false">
- If [code]true[/code], the window is fullscreen.
- </member>
- <member name="window_maximized" type="bool" setter="set_window_maximized" getter="is_window_maximized" default="false">
- If [code]true[/code], the window is maximized.
- </member>
- <member name="window_minimized" type="bool" setter="set_window_minimized" getter="is_window_minimized" default="false">
- If [code]true[/code], the window is minimized.
- </member>
- <member name="window_per_pixel_transparency_enabled" type="bool" setter="set_window_per_pixel_transparency_enabled" getter="get_window_per_pixel_transparency_enabled" default="false">
- If [code]true[/code], the window background is transparent and window frame is removed.
- Use [code]get_tree().get_root().set_transparent_background(true)[/code] to disable main viewport background rendering.
- [b]Note:[/b] This property has no effect if [b]Project &gt; Project Settings &gt; Display &gt; Window &gt; Per-pixel transparency &gt; Allowed[/b] setting is disabled.
- [b]Note:[/b] This property is implemented on HTML5, Linux, macOS and Windows.
- </member>
- <member name="window_position" type="Vector2" setter="set_window_position" getter="get_window_position" default="Vector2( 0, 0 )">
- 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" default="true">
- 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" default="Vector2( 0, 0 )">
- The size of the window (without counting window manager decorations).
- </member>
</members>
<constants>
<constant name="VIDEO_DRIVER_GLES2" value="0" enum="VideoDriver">
@@ -1005,27 +564,6 @@
<constant name="MONTH_DECEMBER" value="12" enum="Month">
December.
</constant>
- <constant name="SCREEN_ORIENTATION_LANDSCAPE" value="0" enum="ScreenOrientation">
- Landscape screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_PORTRAIT" value="1" enum="ScreenOrientation">
- Portrait screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_REVERSE_LANDSCAPE" value="2" enum="ScreenOrientation">
- Reverse landscape screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_REVERSE_PORTRAIT" value="3" enum="ScreenOrientation">
- Reverse portrait screen orientation.
- </constant>
- <constant name="SCREEN_ORIENTATION_SENSOR_LANDSCAPE" value="4" enum="ScreenOrientation">
- Uses landscape or reverse landscape based on the hardware sensor.
- </constant>
- <constant name="SCREEN_ORIENTATION_SENSOR_PORTRAIT" value="5" enum="ScreenOrientation">
- Uses portrait or reverse portrait based on the hardware sensor.
- </constant>
- <constant name="SCREEN_ORIENTATION_SENSOR" value="6" enum="ScreenOrientation">
- Uses most suitable orientation based on the hardware sensor.
- </constant>
<constant name="SYSTEM_DIR_DESKTOP" value="0" enum="SystemDir">
Desktop directory path.
</constant>