summaryrefslogtreecommitdiff
path: root/doc/classes
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <remi@verschelde.fr>2022-03-13 18:10:33 +0100
committerGitHub <noreply@github.com>2022-03-13 18:10:33 +0100
commit47c35f5b9665a04bdddccb0d34fc7983dd78be3d (patch)
tree592018bfa0f878426154877da9e574540b2d1b95 /doc/classes
parent0ce3fff3f835a91a0f5fbb2b816076bb9f212bea (diff)
parentbcf13dc1756d3668478204eaace47db77942346a (diff)
Merge pull request #59108 from KoBeWi/somewhere_on_the_screen
Diffstat (limited to 'doc/classes')
-rw-r--r--doc/classes/CanvasItem.xml7
-rw-r--r--doc/classes/Control.xml13
-rw-r--r--doc/classes/Viewport.xml1
3 files changed, 21 insertions, 0 deletions
diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml
index d71762801c..c7451509f3 100644
--- a/doc/classes/CanvasItem.xml
+++ b/doc/classes/CanvasItem.xml
@@ -355,6 +355,13 @@
Returns the mouse's position in this [CanvasItem] using the local coordinate system of this [CanvasItem].
</description>
</method>
+ <method name="get_screen_transform" qualifiers="const">
+ <return type="Transform2D" />
+ <description>
+ Returns the transform of this [CanvasItem] in global screen coordinates (i.e. taking window position into account). Mostly useful for editor plugins.
+ Equals to [method get_global_transform] if the window is embedded (see [member Viewport.gui_embed_subwindows]).
+ </description>
+ </method>
<method name="get_transform" qualifiers="const">
<return type="Transform2D" />
<description>
diff --git a/doc/classes/Control.xml b/doc/classes/Control.xml
index 97fd584ed1..3163ac5610 100644
--- a/doc/classes/Control.xml
+++ b/doc/classes/Control.xml
@@ -417,6 +417,19 @@
Returns the position and size of the control relative to the top-left corner of the parent Control. See [member position] and [member size].
</description>
</method>
+ <method name="get_screen_position" qualifiers="const">
+ <return type="Vector2" />
+ <description>
+ Returns the position of this [Control] in global screen coordinates (i.e. taking window position into account). Mostly useful for editor plugins.
+ Equals to [member global_position] if the window is embedded (see [member Viewport.gui_embed_subwindows]).
+ Example usage for showing a popup:
+ [codeblock]
+ popup_menu.position = get_screen_position() + get_local_mouse_position()
+ popup_menu.reset_size()
+ popup_menu.popup()
+ [/codeblock]
+ </description>
+ </method>
<method name="get_theme_color" qualifiers="const">
<return type="Color" />
<argument index="0" name="name" type="StringName" />
diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml
index ce61f51b9a..825fbd108b 100644
--- a/doc/classes/Viewport.xml
+++ b/doc/classes/Viewport.xml
@@ -220,6 +220,7 @@
If [code]true[/code], the viewport will not receive input events.
</member>
<member name="gui_embed_subwindows" type="bool" setter="set_embed_subwindows_hint" getter="get_embed_subwindows_hint" default="false">
+ If [code]true[/code], sub-windows (popups and dialogs) will be embedded inside application window as control-like nodes. If [code]false[/code], they will appear as separate windows handled by the operating system.
</member>
<member name="gui_snap_controls_to_pixels" type="bool" setter="set_snap_controls_to_pixels" getter="is_snap_controls_to_pixels_enabled" default="true">
If [code]true[/code], the GUI controls on the viewport will lay pixel perfectly.