Takes a group of renderables and returns a renderable object that renders the group. Args: renderables (Iterable[RenderableType]): An iterable of renderable objects. fit (bool, optional): Fit dimension of group to contents, or fill available space. Defaults to True.
| 448 | |
| 449 | |
| 450 | class Group: |
| 451 | """Takes a group of renderables and returns a renderable object that renders the group. |
| 452 | |
| 453 | Args: |
| 454 | renderables (Iterable[RenderableType]): An iterable of renderable objects. |
| 455 | fit (bool, optional): Fit dimension of group to contents, or fill available space. Defaults to True. |
| 456 | """ |
| 457 | |
| 458 | def __init__(self, *renderables: "RenderableType", fit: bool = True) -> None: |
| 459 | self._renderables = renderables |
| 460 | self.fit = fit |
| 461 | self._render: Optional[List[RenderableType]] = None |
| 462 | |
| 463 | @property |
| 464 | def renderables(self) -> List["RenderableType"]: |
| 465 | if self._render is None: |
| 466 | self._render = list(self._renderables) |
| 467 | return self._render |
| 468 | |
| 469 | def __rich_measure__( |
| 470 | self, console: "Console", options: "ConsoleOptions" |
| 471 | ) -> "Measurement": |
| 472 | if self.fit: |
| 473 | return measure_renderables(console, options, self.renderables) |
| 474 | else: |
| 475 | return Measurement(options.max_width, options.max_width) |
| 476 | |
| 477 | def __rich_console__( |
| 478 | self, console: "Console", options: "ConsoleOptions" |
| 479 | ) -> RenderResult: |
| 480 | yield from self.renderables |
| 481 | |
| 482 | |
| 483 | def group(fit: bool = True) -> Callable[..., Callable[..., Group]]: |
no outgoing calls