virtualx-engine/doc/classes/Popup.xml
Hugo Locurcio b087538119
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-03-16 23:01:02 +01:00

82 lines
3.9 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="Popup" inherits="Control" version="3.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
Base container control for popups and dialogs.
</brief_description>
<description>
Popup is a base [Control] used to show dialogs and popups. It's a subwindow and modal by default (see [Control]) and has helpers for custom popup behavior. All popup methods ensure correct placement within the viewport.
</description>
<tutorials>
</tutorials>
<methods>
<method name="popup">
<return type="void" />
<argument index="0" name="bounds" type="Rect2" default="Rect2( 0, 0, 0, 0 )" />
<description>
Popup (show the control in modal form).
</description>
</method>
<method name="popup_centered">
<return type="void" />
<argument index="0" name="size" type="Vector2" default="Vector2( 0, 0 )" />
<description>
Popup (show the control in modal form) in the center of the screen relative to its current canvas transform, at the current size, or at a size determined by [code]size[/code].
</description>
</method>
<method name="popup_centered_clamped">
<return type="void" />
<argument index="0" name="size" type="Vector2" default="Vector2( 0, 0 )" />
<argument index="1" name="fallback_ratio" type="float" default="0.75" />
<description>
Popup (show the control in modal form) in the center of the screen relative to the current canvas transform, clamping the size to [code]size[/code], then ensuring the popup is no larger than the viewport size multiplied by [code]fallback_ratio[/code].
</description>
</method>
<method name="popup_centered_minsize">
<return type="void" />
<argument index="0" name="minsize" type="Vector2" default="Vector2( 0, 0 )" />
<description>
Popup (show the control in modal form) in the center of the screen relative to the current canvas transform, ensuring the size is never smaller than [code]minsize[/code].
</description>
</method>
<method name="popup_centered_ratio">
<return type="void" />
<argument index="0" name="ratio" type="float" default="0.75" />
<description>
Popup (show the control in modal form) in the center of the screen relative to the current canvas transform, scaled at a ratio of size of the screen.
</description>
</method>
<method name="set_as_minsize">
<return type="void" />
<description>
Shrink popup to keep to the minimum size of content.
</description>
</method>
</methods>
<members>
<member name="popup_exclusive" type="bool" setter="set_exclusive" getter="is_exclusive" default="false">
If [code]true[/code], the popup will not be hidden when a click event occurs outside of it, or when it receives the [code]ui_cancel[/code] action event.
[b]Note:[/b] Enabling this property doesn't affect the Close or Cancel buttons' behavior in dialogs that inherit from this class. As a workaround, you can use [method WindowDialog.get_close_button] or [method ConfirmationDialog.get_cancel] and hide the buttons in question by setting their [member CanvasItem.visible] property to [code]false[/code].
</member>
<member name="visible" type="bool" setter="set_visible" getter="is_visible" overrides="CanvasItem" default="false" />
</members>
<signals>
<signal name="about_to_show">
<description>
Emitted when a popup is about to be shown. This is often used in [PopupMenu] to clear the list of options then create a new one according to the current context.
</description>
</signal>
<signal name="popup_hide">
<description>
Emitted when a popup is hidden.
</description>
</signal>
</signals>
<constants>
<constant name="NOTIFICATION_POST_POPUP" value="80">
Notification sent right after the popup is shown.
</constant>
<constant name="NOTIFICATION_POPUP_HIDE" value="81">
Notification sent right after the popup is hidden.
</constant>
</constants>
</class>