403Webshell
Server IP : 3.96.16.70  /  Your IP : 216.73.216.15
Web Server : Apache
System : Linux ip-172-31-26-103.ca-central-1.compute.internal 6.1.163-186.299.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Feb 24 16:35:42 UTC 2026 x86_64
User : ec2-user ( 1000)
PHP Version : 8.4.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3.9/site-packages/prompt_toolkit/layout/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3.9/site-packages/prompt_toolkit/layout/__init__.py
"""
Command line layout definitions
-------------------------------

The layout of a command line interface is defined by a Container instance.
There are two main groups of classes here. Containers and controls:

- A container can contain other containers or controls, it can have multiple
  children and it decides about the dimensions.
- A control is responsible for rendering the actual content to a screen.
  A control can propose some dimensions, but it's the container who decides
  about the dimensions -- or when the control consumes more space -- which part
  of the control will be visible.


Container classes::

    - Container (Abstract base class)
       |- HSplit (Horizontal split)
       |- VSplit (Vertical split)
       |- FloatContainer (Container which can also contain menus and other floats)
       `- Window (Container which contains one actual control

Control classes::

    - UIControl (Abstract base class)
       |- FormattedTextControl (Renders formatted text, or a simple list of text fragments)
       `- BufferControl (Renders an input buffer.)


Usually, you end up wrapping every control inside a `Window` object, because
that's the only way to render it in a layout.

There are some prepared toolbars which are ready to use::

- SystemToolbar (Shows the 'system' input buffer, for entering system commands.)
- ArgToolbar (Shows the input 'arg', for repetition of input commands.)
- SearchToolbar (Shows the 'search' input buffer, for incremental search.)
- CompletionsToolbar (Shows the completions of the current buffer.)
- ValidationToolbar (Shows validation errors of the current buffer.)

And one prepared menu:

- CompletionsMenu

"""
from .containers import (
    AnyContainer,
    ColorColumn,
    ConditionalContainer,
    Container,
    DynamicContainer,
    Float,
    FloatContainer,
    HorizontalAlign,
    HSplit,
    ScrollOffsets,
    VerticalAlign,
    VSplit,
    Window,
    WindowAlign,
    WindowRenderInfo,
    is_container,
    to_container,
    to_window,
)
from .controls import (
    BufferControl,
    DummyControl,
    FormattedTextControl,
    SearchBufferControl,
    UIContent,
    UIControl,
)
from .dimension import (
    AnyDimension,
    D,
    Dimension,
    is_dimension,
    max_layout_dimensions,
    sum_layout_dimensions,
    to_dimension,
)
from .layout import InvalidLayoutError, Layout, walk
from .margins import (
    ConditionalMargin,
    Margin,
    NumberedMargin,
    PromptMargin,
    ScrollbarMargin,
)
from .menus import CompletionsMenu, MultiColumnCompletionsMenu
from .scrollable_pane import ScrollablePane

__all__ = [
    # Layout.
    "Layout",
    "InvalidLayoutError",
    "walk",
    # Dimensions.
    "AnyDimension",
    "Dimension",
    "D",
    "sum_layout_dimensions",
    "max_layout_dimensions",
    "to_dimension",
    "is_dimension",
    # Containers.
    "AnyContainer",
    "Container",
    "HorizontalAlign",
    "VerticalAlign",
    "HSplit",
    "VSplit",
    "FloatContainer",
    "Float",
    "WindowAlign",
    "Window",
    "WindowRenderInfo",
    "ConditionalContainer",
    "ScrollOffsets",
    "ColorColumn",
    "to_container",
    "to_window",
    "is_container",
    "DynamicContainer",
    "ScrollablePane",
    # Controls.
    "BufferControl",
    "SearchBufferControl",
    "DummyControl",
    "FormattedTextControl",
    "UIControl",
    "UIContent",
    # Margins.
    "Margin",
    "NumberedMargin",
    "ScrollbarMargin",
    "ConditionalMargin",
    "PromptMargin",
    # Menus.
    "CompletionsMenu",
    "MultiColumnCompletionsMenu",
]

Youez - 2016 - github.com/yon3zu
LinuXploit