World > Camera#

class miniworlds.worlds.manager.layout_manager.LayoutManager(world, app)[source]#

LayoutManager handles the positioning and management of World objects within an application window.

It is accessed via world.layout and delegates layout behavior (e.g., docking, switching, removing) to the underlying App and WorldsManager.

Public Data Attributes:

window_docking_position

Returns the docking position of this world in the window layout.

Public Methods:

__init__(world, app)

Initialize a LayoutManager for a given world and application.

add_right(world[, size])

Adds a new world to the right side of the current world.

add_bottom(world[, size])

Adds a new world below the current world.

remove_world(world)

Removes a world from the current layout.

switch_world(new_world[, reset])

Switches focus to another world.

Private Methods:

_add_to_window(app, dock[, size])

Internal method to integrate this world into the window system.


__init__(world, app)[source]#

Initialize a LayoutManager for a given world and application.

Parameters:
  • world – The World instance that owns this layout manager.

  • app – The application instance managing all worlds.

Example

>>> world.layout = LayoutManager(world, app)
add_bottom(world, size=100)[source]#

Adds a new world below the current world.

Return type:

World

Parameters:
  • world – The World instance to dock.

  • size – Height of the added world in pixels (default: 100).

Returns:

The newly added World instance.

Example

>>> world.layout.add_bottom(Console(), size=200)
add_right(world, size=100)[source]#

Adds a new world to the right side of the current world.

Return type:

World

Parameters:
  • world – The World instance to dock.

  • size – Width of the added world in pixels (default: 100).

Returns:

The newly added World instance.

Example

>>> world.layout.add_right(Toolbar(), size=150)
remove_world(world)[source]#

Removes a world from the current layout.

Return type:

None

Parameters:

world – The World instance to remove.

Example

>>> world.layout.remove_world(toolbar)
switch_world(new_world, reset=False)[source]#

Switches focus to another world.

Return type:

None

Parameters:
  • new_world – The World instance to activate.

  • reset – Whether to reset the world state (default: False).

Example

>>> world.layout.switch_world(main_scene, reset=True)
property window_docking_position: str | None#

Returns the docking position of this world in the window layout.

Returns:

A string such as “right” or “bottom”, or None if undocked.

Example

>>> world.layout.window_docking_position
'right'