Download Now

    Reference Codebot Terminal package

    See all packages

    The codebot_terminal package provides a terminal emulator as an LCL control. It uses the VTE library from the GNOME terminal, which is a GTK widget, so the package only builds with the GTK2 and GTK3 widgetsets. The package requires codebot and the LCL.

    Terminal control

    Codebot.Terminal.Controls defines TTerminal, which is a control that runs the shell of the user. The shell starts when the control is first shown.

    • OnReady is invoked once the shell has written its prompt.
    • OnTerminate is invoked when the shell ends.
    • Restart clears the terminal and starts the shell again.

    The control has a font, an optional vertical scroll bar, and colors for its text, background, bold and dim text, cursor, and selection. While the control is being designed in the IDE there is no running terminal, so it paints a prompt and a cursor instead.

    Codebot.Terminal.Types holds what the control shares with the units that implement it, which includes the parts of a terminal that have their own color and the palettes of the sixteen numbered colors: Tango, Linux, Xterm, and Solarized.

    Widgetsets

    Unit Widgetset VTE version Build requirement
    Codebot.Terminal.Controls.Gtk3 GTK3 2.91 libvte-2.91-dev
    Codebot.Terminal.Controls.Gtk2 GTK2 0.28 libvte-dev

    The VTE library is linked when a program is built, so the development package for the chosen widgetset must be installed.

    Items 107 itemspage 1 of 6

    NameUnitKindLine
    ITerminalEventsCodebot.Terminal.Typesinterface61
    ITerminalEvents.TerminalExitedCodebot.Terminal.Typesprocedure66
    ITerminalEvents.TerminalReadyCodebot.Terminal.Typesprocedure64
    TCustomTerminalCodebot.Terminal.Controlsclass76
    TCustomTerminal.ColorsCodebot.Terminal.Controlsproperty106
    TCustomTerminal.ControlCanvasCodebot.Terminal.Controlsproperty100
    TCustomTerminal.CreateCodebot.Terminal.Controlsconstructor115
    TCustomTerminal.DestroyCodebot.Terminal.Controlsdestructor116
    TCustomTerminal.DestroyWndCodebot.Terminal.Controlsprocedure94
    TCustomTerminal.DoReadyCodebot.Terminal.Controlsprocedure102
    TCustomTerminal.DoTerminateCodebot.Terminal.Controlsprocedure104
    TCustomTerminal.FontChangedCodebot.Terminal.Controlsprocedure95
    TCustomTerminal.HasTerminalCodebot.Terminal.Controlsfunction118
    TCustomTerminal.InitializeWndCodebot.Terminal.Controlsprocedure93
    TCustomTerminal.OnReadyCodebot.Terminal.Controlsproperty111
    TCustomTerminal.OnTerminateCodebot.Terminal.Controlsproperty113
    TCustomTerminal.PaintCodebot.Terminal.Controlsprocedure98
    TCustomTerminal.PaintWindowCodebot.Terminal.Controlsprocedure96
    TCustomTerminal.RestartCodebot.Terminal.Controlsprocedure120
    TCustomTerminal.ScrollBarCodebot.Terminal.Controlsproperty109