mirror of
https://github.com/godotengine/godot.git
synced 2024-11-27 09:16:35 +08:00
117158d271
With the drag-and-drop rewrite, `SubViewportContainer` nodes were no longer available as drop-locations. This PR introduces a configuration option, that allows `SubViewportContainer` to be considered as drop-location, but disables the `Control` nodes inside its `SubViewport` children as drop-location.
39 lines
2.9 KiB
XML
39 lines
2.9 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
||
<class name="SubViewportContainer" inherits="Container" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
|
||
<brief_description>
|
||
A container used for displaying the contents of a [SubViewport].
|
||
</brief_description>
|
||
<description>
|
||
A container that displays the contents of underlying [SubViewport] child nodes. It uses the combined size of the [SubViewport]s as minimum size, unless [member stretch] is enabled.
|
||
[b]Note:[/b] Changing a [SubViewportContainer]'s [member Control.scale] will cause its contents to appear distorted. To change its visual size without causing distortion, adjust the node's margins instead (if it's not already in a container).
|
||
[b]Note:[/b] The [SubViewportContainer] forwards mouse-enter and mouse-exit notifications to its sub-viewports.
|
||
</description>
|
||
<tutorials>
|
||
</tutorials>
|
||
<methods>
|
||
<method name="_propagate_input_event" qualifiers="virtual const" experimental="">
|
||
<return type="bool" />
|
||
<param index="0" name="event" type="InputEvent" />
|
||
<description>
|
||
Virtual method to be implemented by the user. If it returns [code]true[/code], the [param event] is propagated to [SubViewport] children. Propagation doesn't happen if it returns [code]false[/code]. If the function is not implemented, all events are propagated to SubViewports.
|
||
</description>
|
||
</method>
|
||
</methods>
|
||
<members>
|
||
<member name="consume_drag_and_drop" type="bool" setter="set_consume_drag_and_drop" getter="is_consume_drag_and_drop_enabled" default="false">
|
||
If [code]false[/code], the [SubViewportContainer] is not available as a drop target in drag-and-drop operations, and instead the [Control] nodes inside its [Viewport] children are potential drop targets.
|
||
If [code]true[/code], the [SubViewportContainer] itself will be considered as a drop target in drag-and-drop operations, preventing the [Control] nodes inside its [Viewport] children from becoming drop targets.
|
||
</member>
|
||
<member name="focus_mode" type="int" setter="set_focus_mode" getter="get_focus_mode" overrides="Control" enum="Control.FocusMode" default="1" />
|
||
<member name="stretch" type="bool" setter="set_stretch" getter="is_stretch_enabled" default="false">
|
||
If [code]true[/code], the sub-viewport will be automatically resized to the control's size.
|
||
[b]Note:[/b] If [code]true[/code], this will prohibit changing [member SubViewport.size] of its children manually.
|
||
</member>
|
||
<member name="stretch_shrink" type="int" setter="set_stretch_shrink" getter="get_stretch_shrink" default="1">
|
||
Divides the sub-viewport's effective resolution by this value while preserving its scale. This can be used to speed up rendering.
|
||
For example, a 1280×720 sub-viewport with [member stretch_shrink] set to [code]2[/code] will be rendered at 640×360 while occupying the same size in the container.
|
||
[b]Note:[/b] [member stretch] must be [code]true[/code] for this property to work.
|
||
</member>
|
||
</members>
|
||
</class>
|