NAME
TUI::App - Application layer for the TUI::Vision framework
SYNOPSIS
package MyApp;
use Moo;
use TUI::Objects;
use TUI::App;
use TUI::Menus;
extends TApplication;
sub BUILDARGS {
my $args = shift->SUPER::BUILDARGS( @_ ) || return;
$args->{bounds} = new_TRect( 0, 0, 80, 25 );
return $args;
}
sub initMenuBar {
my ( $class, $r ) = @_;
$r->{b}{y} = $r->{a}{y} + 1;
return new_TMenuBar( $r,
new_TSubMenu( '~F~ile', hcNoContext ) +
new_TMenuItem( 'E~x~it', cmQuit, kbAltX, hcNoContext, 'Alt-X' )
);
}
package main;
my $app = MyApp->new();
$app->run();
DESCRIPTION
TUI::App represents the application-level framework of TUI::Vision. It corresponds to the Turbo Vision TProgram and TApplication layer and provides the structural foundation for building complete TUI programs.
This module re-exports multiple application components, including:
Const - Symbolic constants for application behavior.
TBackground - Default background view and screen initialization.
TDeskInit / TDeskTop - Desktop initialization and window management.
TProgInit - Program startup sequence.
TProgram - Main program loop and event dispatching.
TApplication - High-level application object.
AUTHORS
Borland International (original Turbo Vision design)
J. Schneider <brickpool@cpan.org> (Perl implementation and maintenance)
CONTRIBUTORS
Contributors are documented in the POD of the respective framework modules.
COPYRIGHT AND LICENSE
Copyright (c) 1990-1994, 1997 by Borland International
Copyright (c) 2025-2026 the "AUTHORS" as listed above.
This software is licensed under the MIT license (see the LICENSE file, which is part of the distribution).