class_container.rst 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. :github_url: hide
  2. .. Generated automatically by doc/tools/make_rst.py in Godot's source tree.
  3. .. DO NOT EDIT THIS FILE, but the Container.xml source instead.
  4. .. The source is found in doc/classes or modules/<name>/doc_classes.
  5. .. _class_Container:
  6. Container
  7. =========
  8. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  9. **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>`
  10. Base node for containers.
  11. Description
  12. -----------
  13. Base node for containers. A ``Container`` contains other controls and automatically arranges them in a certain way.
  14. A Control can inherit this to create custom container classes.
  15. Properties
  16. ----------
  17. +----------------------------------------------+--------------+-----------------------------------------------------------------------+
  18. | :ref:`MouseFilter<enum_Control_MouseFilter>` | mouse_filter | ``1`` (overrides :ref:`Control<class_Control_property_mouse_filter>`) |
  19. +----------------------------------------------+--------------+-----------------------------------------------------------------------+
  20. Methods
  21. -------
  22. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  23. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`_get_allowed_size_flags_horizontal<class_Container_method__get_allowed_size_flags_horizontal>` **(** **)** |virtual| |const| |
  24. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  25. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`_get_allowed_size_flags_vertical<class_Container_method__get_allowed_size_flags_vertical>` **(** **)** |virtual| |const| |
  26. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  27. | void | :ref:`fit_child_in_rect<class_Container_method_fit_child_in_rect>` **(** :ref:`Control<class_Control>` child, :ref:`Rect2<class_Rect2>` rect **)** |
  28. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  29. | void | :ref:`queue_sort<class_Container_method_queue_sort>` **(** **)** |
  30. +-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  31. Signals
  32. -------
  33. .. _class_Container_signal_pre_sort_children:
  34. - **pre_sort_children** **(** **)**
  35. Emitted when children are going to be sorted.
  36. ----
  37. .. _class_Container_signal_sort_children:
  38. - **sort_children** **(** **)**
  39. Emitted when sorting the children is needed.
  40. Constants
  41. ---------
  42. .. _class_Container_constant_NOTIFICATION_PRE_SORT_CHILDREN:
  43. .. _class_Container_constant_NOTIFICATION_SORT_CHILDREN:
  44. - **NOTIFICATION_PRE_SORT_CHILDREN** = **50** --- Notification just before children are going to be sorted, in case there's something to process beforehand.
  45. - **NOTIFICATION_SORT_CHILDREN** = **51** --- Notification for when sorting the children, it must be obeyed immediately.
  46. Method Descriptions
  47. -------------------
  48. .. _class_Container_method__get_allowed_size_flags_horizontal:
  49. - :ref:`PackedInt32Array<class_PackedInt32Array>` **_get_allowed_size_flags_horizontal** **(** **)** |virtual| |const|
  50. 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.
  51. \ **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.
  52. ----
  53. .. _class_Container_method__get_allowed_size_flags_vertical:
  54. - :ref:`PackedInt32Array<class_PackedInt32Array>` **_get_allowed_size_flags_vertical** **(** **)** |virtual| |const|
  55. 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.
  56. \ **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.
  57. ----
  58. .. _class_Container_method_fit_child_in_rect:
  59. - void **fit_child_in_rect** **(** :ref:`Control<class_Control>` child, :ref:`Rect2<class_Rect2>` rect **)**
  60. Fit a child control in a given rect. This is mainly a helper for creating custom container classes.
  61. ----
  62. .. _class_Container_method_queue_sort:
  63. - void **queue_sort** **(** **)**
  64. Queue resort of the contained children. This is called automatically anyway, but can be called upon request.
  65. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  66. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  67. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  68. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  69. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  70. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`