The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Config::Model::CursesUI - Curses interface to edit config data

SYNOPSIS

 use Config::Model ;
 use Config::Model::CursesUI ;

 my $model = Config::Model -> new ;

 my $inst = $model->instance (root_class_name => 'XXX',
                              instance_name   => 'yyy');

 # create dialog
 my $dialog = Config::Model::CursesUI-> new
  (
   experience => 'beginner', # or 'advanced'
  ) ;

 # start never returns
 $dialog->start($model) ;

DESCRIPTION

This class provides a Curses::UI interface to configuration data managed by Config::Model.

IMPORTANT: Once the CursesUI object is created, STDOUT and STDERR are managed by the Curses interface, so all print and warn will not work as expected.

CONSTRUCTOR

The constructor accepts the following parameters:

experience

Specifies the experience level of the user (default: beginner). The experience can be master advanced beginner.

load

Subroutine ref containing the code to load the configuration data from the configuration files. This may overrides loading mechanism specified in the model with Config::Model::AutoRead. This sub is called without any arguments.

store

Subroutine ref containing the code to store the configuration data in the configuration files. This may overrides writing mechanism specified in the model with Config::Model::AutoRead. This sub is called without any arguments.

AUTHOR

Dominique Dumont, (ddumont at cpan dot org)

SEE ALSO

Config::Model, Config::Model::ObjTreeScanner, Curses::UI, Curses