class_container.rst 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/Container.xml.
  6. .. _class_Container:
  7. Container
  8. =========
  9. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  10. **Inherited By:** :ref:`AspectRatioContainer<class_AspectRatioContainer>`, :ref:`BoxContainer<class_BoxContainer>`, :ref:`CenterContainer<class_CenterContainer>`, :ref:`EditorProperty<class_EditorProperty>`, :ref:`FlowContainer<class_FlowContainer>`, :ref:`GraphNode<class_GraphNode>`, :ref:`GridContainer<class_GridContainer>`, :ref:`MarginContainer<class_MarginContainer>`, :ref:`PanelContainer<class_PanelContainer>`, :ref:`ScrollContainer<class_ScrollContainer>`, :ref:`SplitContainer<class_SplitContainer>`, :ref:`SubViewportContainer<class_SubViewportContainer>`, :ref:`TabContainer<class_TabContainer>`
  11. Base node for containers.
  12. .. rst-class:: classref-introduction-group
  13. Description
  14. -----------
  15. Base node for containers. A **Container** contains other controls and automatically arranges them in a certain way.
  16. A Control can inherit this to create custom container classes.
  17. .. rst-class:: classref-introduction-group
  18. Tutorials
  19. ---------
  20. - :doc:`GUI containers <../tutorials/ui/gui_containers>`
  21. .. rst-class:: classref-reftable-group
  22. Properties
  23. ----------
  24. .. table::
  25. :widths: auto
  26. +----------------------------------------------+--------------+-----------------------------------------------------------------------+
  27. | :ref:`MouseFilter<enum_Control_MouseFilter>` | mouse_filter | ``1`` (overrides :ref:`Control<class_Control_property_mouse_filter>`) |
  28. +----------------------------------------------+--------------+-----------------------------------------------------------------------+
  29. .. rst-class:: classref-reftable-group
  30. Methods
  31. -------
  32. .. table::
  33. :widths: auto
  34. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`_get_allowed_size_flags_horizontal<class_Container_method__get_allowed_size_flags_horizontal>` **(** **)** |virtual| |const| |
  36. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`_get_allowed_size_flags_vertical<class_Container_method__get_allowed_size_flags_vertical>` **(** **)** |virtual| |const| |
  38. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | void | :ref:`fit_child_in_rect<class_Container_method_fit_child_in_rect>` **(** :ref:`Control<class_Control>` child, :ref:`Rect2<class_Rect2>` rect **)** |
  40. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | void | :ref:`queue_sort<class_Container_method_queue_sort>` **(** **)** |
  42. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  43. .. rst-class:: classref-section-separator
  44. ----
  45. .. rst-class:: classref-descriptions-group
  46. Signals
  47. -------
  48. .. _class_Container_signal_pre_sort_children:
  49. .. rst-class:: classref-signal
  50. **pre_sort_children** **(** **)**
  51. Emitted when children are going to be sorted.
  52. .. rst-class:: classref-item-separator
  53. ----
  54. .. _class_Container_signal_sort_children:
  55. .. rst-class:: classref-signal
  56. **sort_children** **(** **)**
  57. Emitted when sorting the children is needed.
  58. .. rst-class:: classref-section-separator
  59. ----
  60. .. rst-class:: classref-descriptions-group
  61. Constants
  62. ---------
  63. .. _class_Container_constant_NOTIFICATION_PRE_SORT_CHILDREN:
  64. .. rst-class:: classref-constant
  65. **NOTIFICATION_PRE_SORT_CHILDREN** = ``50``
  66. Notification just before children are going to be sorted, in case there's something to process beforehand.
  67. .. _class_Container_constant_NOTIFICATION_SORT_CHILDREN:
  68. .. rst-class:: classref-constant
  69. **NOTIFICATION_SORT_CHILDREN** = ``51``
  70. Notification for when sorting the children, it must be obeyed immediately.
  71. .. rst-class:: classref-section-separator
  72. ----
  73. .. rst-class:: classref-descriptions-group
  74. Method Descriptions
  75. -------------------
  76. .. _class_Container_method__get_allowed_size_flags_horizontal:
  77. .. rst-class:: classref-method
  78. :ref:`PackedInt32Array<class_PackedInt32Array>` **_get_allowed_size_flags_horizontal** **(** **)** |virtual| |const|
  79. Implement to return a list of allowed horizontal :ref:`SizeFlags<enum_Control_SizeFlags>` for child nodes. This doesn't technically prevent the usages of any other size flags, if your implementation requires that. This only limits the options available to the user in the Inspector dock.
  80. \ **Note:** Having no size flags is equal to having :ref:`Control.SIZE_SHRINK_BEGIN<class_Control_constant_SIZE_SHRINK_BEGIN>`. As such, this value is always implicitly allowed.
  81. .. rst-class:: classref-item-separator
  82. ----
  83. .. _class_Container_method__get_allowed_size_flags_vertical:
  84. .. rst-class:: classref-method
  85. :ref:`PackedInt32Array<class_PackedInt32Array>` **_get_allowed_size_flags_vertical** **(** **)** |virtual| |const|
  86. Implement to return a list of allowed vertical :ref:`SizeFlags<enum_Control_SizeFlags>` for child nodes. This doesn't technically prevent the usages of any other size flags, if your implementation requires that. This only limits the options available to the user in the Inspector dock.
  87. \ **Note:** Having no size flags is equal to having :ref:`Control.SIZE_SHRINK_BEGIN<class_Control_constant_SIZE_SHRINK_BEGIN>`. As such, this value is always implicitly allowed.
  88. .. rst-class:: classref-item-separator
  89. ----
  90. .. _class_Container_method_fit_child_in_rect:
  91. .. rst-class:: classref-method
  92. void **fit_child_in_rect** **(** :ref:`Control<class_Control>` child, :ref:`Rect2<class_Rect2>` rect **)**
  93. Fit a child control in a given rect. This is mainly a helper for creating custom container classes.
  94. .. rst-class:: classref-item-separator
  95. ----
  96. .. _class_Container_method_queue_sort:
  97. .. rst-class:: classref-method
  98. void **queue_sort** **(** **)**
  99. Queue resort of the contained children. This is called automatically anyway, but can be called upon request.
  100. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  101. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  102. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  103. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  104. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  105. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`