Skip to content

StatusBar

Status bar items for displaying information at the bottom of VS Code.

StatusBarItem

StatusBarItem(client: VSCodeClient, id: str, alignment: str = StatusBarAlignment.Left, priority: Optional[int] = None)

Represents a status bar item.

Create a status bar item.

Parameters:

Name Type Description Default
client VSCodeClient

The VS Code client

required
id str

Unique identifier

required
alignment str

Alignment (left or right)

Left
priority Optional[int]

Priority (higher = more left)

None
Source code in vscode_sockpuppet/statusbar.py
def __init__(
    self,
    client: "VSCodeClient",
    id: str,
    alignment: str = StatusBarAlignment.Left,
    priority: Optional[int] = None,
):
    """
    Create a status bar item.

    Args:
        client: The VS Code client
        id: Unique identifier
        alignment: Alignment (left or right)
        priority: Priority (higher = more left)
    """
    self.client = client
    self.id = id
    self._text = ""
    self._tooltip: Optional[str] = None
    self._command: Optional[str] = None
    self._color: Optional[str] = None
    self._background_color: Optional[str] = None
    self._visible = False

    # Create on server side
    self.client._send_request(
        "window.createStatusBarItem",
        {"id": id, "alignment": alignment, "priority": priority},
    )

text property writable

text: str

Get the text of the status bar item.

tooltip property writable

tooltip: Optional[str]

Get the tooltip of the status bar item.

command property writable

command: Optional[str]

Get the command of the status bar item.

color property writable

color: Optional[str]

Get the text color.

background_color property writable

background_color: Optional[str]

Get the background color.

show

show() -> None

Show the status bar item.

Source code in vscode_sockpuppet/statusbar.py
def show(self) -> None:
    """Show the status bar item."""
    self._visible = True
    self._update()

hide

hide() -> None

Hide the status bar item.

Source code in vscode_sockpuppet/statusbar.py
def hide(self) -> None:
    """Hide the status bar item."""
    self._visible = False
    self._update()

dispose

dispose() -> None

Dispose the status bar item.

Source code in vscode_sockpuppet/statusbar.py
def dispose(self) -> None:
    """Dispose the status bar item."""
    self.client._send_request("window.disposeStatusBarItem", {"id": self.id})

StatusBarAlignment

StatusBarAlignment

Status bar alignment options.

create_status_bar_item

create_status_bar_item

create_status_bar_item(client: VSCodeClient, alignment: str = StatusBarAlignment.Left, priority: Optional[int] = None) -> StatusBarItem

Create a status bar item.

Parameters:

Name Type Description Default
client VSCodeClient

The VS Code client

required
alignment str

Alignment (left or right)

Left
priority Optional[int]

Priority (higher = more left)

None

Returns:

Type Description
StatusBarItem

A new status bar item

Source code in vscode_sockpuppet/statusbar.py
def create_status_bar_item(
    client: "VSCodeClient",
    alignment: str = StatusBarAlignment.Left,
    priority: Optional[int] = None,
) -> StatusBarItem:
    """
    Create a status bar item.

    Args:
        client: The VS Code client
        alignment: Alignment (left or right)
        priority: Priority (higher = more left)

    Returns:
        A new status bar item
    """
    item_id = str(uuid.uuid4())
    return StatusBarItem(client, item_id, alignment, priority)