Class Status


  • public class Status
    extends java.lang.Object
    Manages a status bar at the bottom of the terminal.

    The Status class provides functionality for displaying and managing a status bar at the bottom of the terminal. It allows applications to show persistent status information to the user while still using the rest of the terminal for normal input and output.

    Key features include:

    • Support for multiple status lines
    • Styled text with ANSI colors and attributes
    • Automatic resizing based on terminal dimensions
    • Optional border between main display and status area
    • Ability to temporarily suspend the status display

    The status bar is particularly useful for displaying persistent information such as:

    • Application mode or state
    • Current file or context
    • Key bindings or available commands
    • Error messages or notifications

    This class is used by various JLine components to provide status information to the user without disrupting the main terminal interaction.

    • Field Detail

      • terminal

        protected final Terminal terminal
      • supported

        protected final boolean supported
      • suspended

        protected boolean suspended
      • border

        protected int border
      • display

        protected Display display
      • scrollRegion

        protected int scrollRegion
    • Constructor Detail

      • Status

        public Status​(Terminal terminal)
    • Method Detail

      • getExistingStatus

        public static java.util.Optional<Status> getExistingStatus​(Terminal terminal)
      • getStatus

        public static Status getStatus​(Terminal terminal,
                                       boolean create)
      • close

        public void close()
      • setBorder

        public void setBorder​(boolean border)
      • resize

        public void resize()
      • resize

        public void resize​(Size size)
      • reset

        public void reset()
      • redraw

        public void redraw()
      • hide

        public void hide()
      • update

        public void update​(java.util.List<AttributedString> lines,
                           boolean flush)
        Returns true if the cursor may be misplaced and should be updated.
      • suspend

        public void suspend()
        The suspend method is used when a full-screen. If the status was not already suspended, the lines used by the status are cleared during this call.
      • restore

        public void restore()
        The restore() call is the opposite of suspend() and will make the status bar be updated again. If the status was suspended, the lines used by the status will be drawn during this call.
      • size

        public int size()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object