Update the screen at a given offset. Args: renderable (RenderableType): A Rich renderable. region (Region, optional): Region of screen to update, or None for entire screen. Defaults to None. x (int, optional): x offset. Defaults to 0. y (int,
(
self,
renderable: RenderableType,
*,
region: Optional[Region] = None,
options: Optional[ConsoleOptions] = None,
)
| 1817 | self.print(json_renderable, soft_wrap=True) |
| 1818 | |
| 1819 | def update_screen( |
| 1820 | self, |
| 1821 | renderable: RenderableType, |
| 1822 | *, |
| 1823 | region: Optional[Region] = None, |
| 1824 | options: Optional[ConsoleOptions] = None, |
| 1825 | ) -> None: |
| 1826 | """Update the screen at a given offset. |
| 1827 | |
| 1828 | Args: |
| 1829 | renderable (RenderableType): A Rich renderable. |
| 1830 | region (Region, optional): Region of screen to update, or None for entire screen. Defaults to None. |
| 1831 | x (int, optional): x offset. Defaults to 0. |
| 1832 | y (int, optional): y offset. Defaults to 0. |
| 1833 | |
| 1834 | Raises: |
| 1835 | errors.NoAltScreen: If the Console isn't in alt screen mode. |
| 1836 | |
| 1837 | """ |
| 1838 | if not self.is_alt_screen: |
| 1839 | raise errors.NoAltScreen("Alt screen must be enabled to call update_screen") |
| 1840 | render_options = options or self.options |
| 1841 | if region is None: |
| 1842 | x = y = 0 |
| 1843 | render_options = render_options.update_dimensions( |
| 1844 | render_options.max_width, render_options.height or self.height |
| 1845 | ) |
| 1846 | else: |
| 1847 | x, y, width, height = region |
| 1848 | render_options = render_options.update_dimensions(width, height) |
| 1849 | |
| 1850 | lines = self.render_lines(renderable, options=render_options) |
| 1851 | self.update_screen_lines(lines, x, y) |
| 1852 | |
| 1853 | def update_screen_lines( |
| 1854 | self, lines: List[List[Segment]], x: int = 0, y: int = 0 |