user: Explain UILayout(bpy_struct) in complete detail according to the official Blender documentation.

assistant: Lock display order to default value

    template_running_jobs()
    :   template_running_jobs

    template_operator_search()
    :   template_operator_search

    template_menu_search()
    :   template_menu_search

    template_header_3D_mode()

    template_edit_mode_selection()
    :   Inserts common 3DView Edit modes header UI (selector for selection mode)

    template_reports_banner()
    :   template_reports_banner

    template_input_status()
    :   template_input_status

    template_status_info()
    :   template_status_info

    template_node_link(*ntree*, *node*, *socket*)
    :   template_node_link

    template_node_view(*ntree*, *node*, *socket*)
    :   template_node_view

    template_node_asset_menu_items(*\**, *catalog_path=''*, *operator='ADD'*)
    :   template_node_asset_menu_items

        Parameters:
        :   **operator** (enum in [`'ADD'`, `'SWAP'`], (optional)) –

            Operator, The operator the asset menu will use

            - `ADD`
              Add Node – Add a node to the active tree..
            - `SWAP`
              Swap Node – Replace the selected nodes with the specified type..

    template_modifier_asset_menu_items(*\**, *catalog_path=''*, *skip_essentials=False*)
    :   template_modifier_asset_menu_items

    template_node_operator_asset_menu_items(*\**, *catalog_path=''*)
    :   template_node_operator_asset_menu_items

    template_node_operator_asset_root_items()
    :   template_node_operator_asset_root_items

    template_texture_user()
    :   template_texture_user

    template_keymap_item_properties(*item*)
    :   template_keymap_item_properties

    template_component_menu(*data*, *property*, *\**, *name=''*)
    :   Item. Display expanded property in a popup menu

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType")) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_colorspace_settings(*data*, *property*)
    :   Item. A widget to control input color space settings.

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_colormanaged_view_settings(*data*, *property*)
    :   Item. A widget to control color managed view settings.

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_node_socket(*\**, *color=(0.0, 0.0, 0.0, 1.0)*)
    :   Node Socket Icon

        Parameters:
        :   **color** (*float array* *of* *4 items in* *[**0**,* *1**]**,* *(**optional**)*) – Color

    template_cache_file(*data*, *property*)
    :   Item(s). User interface for selecting cache files and their source paths

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_cache_file_velocity(*data*, *property*)
    :   Show cache files velocity properties

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_cache_file_time_settings(*data*, *property*)
    :   Show cache files time settings

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_cache_file_layers(*data*, *property*)
    :   Show cache files override layers properties

        Parameters:
        :   - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_recent_files(*\**, *rows=6*)
    :   Show list of recently saved .blend files

        Parameters:
        :   **rows** (*int in* *[**1**,* *inf**]**,* *(**optional**)*) – Maximum number of items to show

        Returns:
        :   Number of items drawn

        Return type:
        :   int in [0, inf]

    template_file_select_path(*params*)
    :   Item. A text button to set the active file browser path.

    template_event_from_keymap_item(*item*, *\**, *text=''*, *text_ctxt=''*, *translate=True*)
    :   Display keymap item as icons/text

        Parameters:
        :   - **item** ([`KeyMapItem`](bpy.types.KeyMapItem.html#bpy.types.KeyMapItem "bpy.types.KeyMapItem"), (never None)) – Item
            - **text** (*string**,* *(**optional**)*) – Override automatic text of the item
            - **text_ctxt** (*string**,* *(**optional**)*) – Override automatic translation context of the given text
            - **translate** (*boolean**,* *(**optional**)*) – Translate the given text, when UI translation is enabled

    template_light_linking_collection(*context_layout*, *data*, *property*)
    :   Visualization of a content of a light linking collection

        Parameters:
        :   - **context_layout** ([`UILayout`](#bpy.types.UILayout "bpy.types.UILayout"), (never None)) – Layout to set active list element as context properties
            - **data** ([`AnyType`](bpy.types.AnyType.html#bpy.types.AnyType "bpy.types.AnyType"), (never None)) – Data from which to take property
            - **property** (*string**,* *(**never None**)*) – Identifier of property in data

    template_bone_collection_tree()
    :   Show bone collections tree

    template_grease_pencil_layer_tree()
    :   View of the active Grease Pencil layer tree

    template_node_tree_interface(*interface*)
    :   Show a node tree interface

        Parameters:
        :   **interface** ([`NodeTreeInterface`](bpy.types.NodeTreeInterface.html#bpy.types.NodeTreeInterface "bpy.types.NodeTreeInterface"), (never None)) – Node Tree Interface, Interface of a node tree to display

    template_node_inputs(*node*)
    :   Show a node settings and input socket values

        Parameters:
        :   **node** ([`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), (never None)) – Node, Display inputs of this node

    template_asset_shelf_popover(*asset_shelf*, *\**, *name=''*, *icon='NONE'*, *icon_value=0*)
    :   Create a button to open an asset shelf in a popover

        Parameters:
        :   - **asset_shelf** (*string**,* *(**never None**)*) – Identifier of the asset shelf to display (`bl_idname`)
            - **name** (*string**,* *(**optional**)*) – Optional name to indicate the active asset
            - **icon** (enum in [Icon Items](bpy_types_enum_items/icon_items.html#rna-enum-icon-items), (optional)) – Icon, Override automatic icon of the item
            - **icon_value** (*int in* *[**0**,* *inf**]**,* *(**optional**)*) – Icon Value, Override automatic icon of the item

    template_popup_confirm(*operator*, *\**, *text=''*, *text_ctxt=''*, *translate=True*, *icon='NONE'*, *cancel_text=''*, *cancel_default=False*)
    :   Add confirm & cancel buttons into a popup which will close the popup when pressed

        Parameters:
        :   - **operator** (*string**,* *(**never None**)*) – Identifier of the operator
            - **text** (*string**,* *(**optional**)*) – Override automatic text of the item
            - **text_ctxt** (*string**,* *(**optional**)*) – Override automatic translation context of the given text
            - **translate** (*boolean**,* *(**optional**)*) – Translate the given text, when UI translation is enabled
            - **icon** (enum in [Icon Items](bpy_types_enum_items/icon_items.html#rna-enum-icon-items), (optional)) – Icon, Override automatic icon of the item
            - **cancel_text** (*string**,* *(**optional**,* *never None**)*) – Optional text to use for the cancel, not shown when an empty string
            - **cancel_default** (*boolean**,* *(**optional**)*) – Cancel button by default

        Returns:
        :   Operator properties to fill in

        Return type:
        :   [`OperatorProperties`](bpy.types.OperatorProperties.html#bpy.types.OperatorProperties "bpy.types.OperatorProperties")

    template_shape_key_tree()
    :   Shape Key tree view

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type

    introspect()
    :   Return a list of dictionaries containing a textual representation of the UI layout.

        Return type:
        :   list[dict[str, Any]]