Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
UI::Dialog::Backend::CUseroContributed Perl DocUI::Dialog::Backend::CDialog(3)

NAME
       UI::Dialog::Backend::CDialog - backend for the console dialog(1)
       variant.

SYNOPSIS
	 use UI::Dialog::Backend::CDialog;
	 my $d = new UI::Dialog::Backend::CDialog ( backtitle => 'Demo',
						    title => 'Default' );

	 $d->msgbox( title => 'Welcome!', text => 'Welcome one and all!' );

ABSTRACT
       UI::Dialog::Backend::CDialog is the UI::Dialog backend for the console
       dialog variant. While this module is used through UI::Dialog or any
       other loader module only	the compatible methods are ever	accessible.
       However,	when using this	module directly	in your	application (as	in the
       SYNOPSIS	example) you are given access to all the options and features
       of the real dialog(1) application.

DESCRIPTION
       There are essentially two versions of the console dialog	program. One
       has support for colours as well as extra	widgets, while the other does
       not have	either.	You can	read about the colour support in the TEXT
       MARKUP section.

EXPORT
	 None

INHERITS
	 UI::Dialog::Backend

CONSTRUCTOR
   new(	@options )
       EXAMPLE
	    my $d = new( title => 'Default Title', backtitle =>	'Backtitle',
			 width => 65, height =>	20, listheight => 5 );

       DESCRIPTION
		 This is the Class Constructor method. It accepts a list of
		 key =>	value pairs and	uses them as the defaults when
		 interacting with the various widgets.

       RETURNS
		 A blessed object reference of the
		 UI::Dialog::Backend::CDialog class.

       OPTIONS
	   The (...)'s after each option indicate the default for the option.
	   An *	denotes	support	by all the widget methods on a per-use policy
	   defaulting to the values decided during object creation.

	   debug = 0,1,2 (0)
	   literal = 0,1 (0)
	   backtitle = "backtitle" ('')	*
	   title = "title" ('')	*
	   height = \d+	(0) *
	   width = \d+ (0) *
	   beepbefore =	0,1 (0)	*
	   beepafter = 0,1 (0) *

WIDGET METHODS
   yesno( )
       EXAMPLE
	    if ($d->yesno( text	=> 'A binary type question?') )	{
		# user pressed yes
	    } else {
		# user pressed no or cancel
	    }

       DESCRIPTION
		 Present the end user with a message box that has two buttons,
		 yes and no.

       RETURNS
		 TRUE \fIs0(1) for a response of YES or	FALSE \fIs0(0) for
		 anything else.

   msgbox( )
       EXAMPLE
	    $d->msgbox(	text =>	'A simple message' );

       DESCRIPTION
		 Pesent	the end	user with a message box	that has an OK button.

       RETURNS
		 TRUE \fIs0(1) for a response of OK or FALSE \fIs0(0) for
		 anything else.

   infobox( )
       EXAMPLE
	    $d->infobox( text => 'A simple 6 second message.', timeout => 6000 );

       DESCRIPTION
		 Pesent	the end	user with a message box	for a limited duration
		 of time. The timeout is specified in thousandths of a second,
		 ie: 1000 = 1 second.

       RETURNS
		 TRUE \fIs0(1) for a response of OK or FALSE \fIs0(0) for
		 anything else.

   password( )
       EXAMPLE
	    my $string = $d->password( text => 'Enter some (hidden) text.' );

       DESCRIPTION
		 Present the end user with a text input	field that doesn't
		 reveal	the input (except to the script) and a message.

       RETURNS
		 a SCALAR if the response is OK	and FALSE \fIs0(0) for
		 anything else.

   inputbox( )
       EXAMPLE
	    my $string = $d->inputbox( text => 'Please enter some text.',
				       entry =>	'this is the input field' );

       DESCRIPTION
		 Present the end user with a text input	field and a message.

       RETURNS
		 a SCALAR if the response is OK	and FALSE \fIs0(0) for
		 anything else.

   textbox( )
       EXAMPLE
	    $d->textbox( path => '/path/to/a/text/file'	);

       DESCRIPTION
		 Present the end user with a simple scrolling box containing
		 the contents of the given text	file.

       RETURNS
		 TRUE \fIs0(1) if the response is OK and FALSE \fIs0(0)	for
		 anything else.

   menu( )
       EXAMPLE
	    my $selection1 = $d->menu( text => 'Select one:',
				       list => [ 'tag1', 'item1',
						 'tag2', 'item2',
						 'tag3', 'item3' ]
				     );

       DESCRIPTION
		 Present the user with a selectable list.

       RETURNS
		 a SCALAR of the chosen	tag if the response is OK and FALSE
		 \fIs0(0) for anything else.

   checklist( )
       EXAMPLE
	    my @selection = $d->checklist( text	=> 'Select one:',
					   list	=> [ 'tag1', [ 'item1',	0 ],
						     'tag2', [ 'item2',	1 ],
						     'tag3', [ 'item3',	1 ] ]
					 );

       DESCRIPTION
		 Present the user with a selectable checklist.

       RETURNS
		 an ARRAY of the chosen	tags if	the response is	OK and FALSE
		 \fIs0(0) for anything else.

   form( )
       EXAMPLE
	    my @data = $d->form( text => 'Select one:',
				 list => [ [ 'tag1', 1,	1 ], [ 'item1',	1, 10, 10, 10 ],
					   [ 'tag2', 2,	1 ], [ 'item2',	2, 10, 10, 10 ],
					   [ 'tag3', 3,	1 ], [ 'item3',	3, 10, 10, 10 ]	]
			       );

       DESCRIPTION
		 Present the user with a selectable and	potentially editable
		 form.

       RETURNS
		 an ARRAY of the form data if the response is OK and FALSE
		 \fIs0(0) for anything else.

   radiolist( )
       EXAMPLE
	    my $selection = $d->radiolist( text	=> 'Select one:',
					   list	=> [ 'tag1', [ 'item1',	0 ],
						     'tag2', [ 'item2',	1 ],
						     'tag3', [ 'item3',	0 ] ]
					 );

       DESCRIPTION
		 Present the user with a selectable radiolist.

       RETURNS
		 a SCALAR of the chosen	tag if the response is OK and FALSE
		 \fIs0(0) for anything else.

   fselect( )
       EXAMPLE
	    my $text = $d->fselect( path => '/path/to/a/file/or/directory' );

       DESCRIPTION
		 Present the user with a file selection	widget preset with the
		 given path.

       RETURNS
		 a SCALAR if the response is OK	and FALSE \fIs0(0) for
		 anything else.

   dselect( )
       EXAMPLE
	    my $text = $d->dselect( path => '/path/to/a/directory' );

       DESCRIPTION
		 Present the user with a file selection	widget preset with the
		 given path.  Unlike fselect() this widget will	only return a
		 directory selection.

       RETURNS
		 a SCALAR if the response is OK	and FALSE \fIs0(0) for
		 anything else.

   calendar( )
       EXAMPLE
	    my $date = $d->calendar( text => 'Pick a date...',
				     day => 1, month =>	1, year	=> 1970	);
	    my ($m,$d,$y) = split(/\//,$date);

	    # or alternatively...

	    $d->calendar( text => 'Pick	a date...',
			  day => 1, month => 1,	year =>	1970 );
	    ($m,$d,$y) = $d->ra();

       DESCRIPTION
		 Present the user with a calendar widget preset	with the given
		 date or if none is specified, use the current date.

       RETURNS
		 a SCALAR if the response is OK	and FALSE \fIs0(0) for
		 anything else.

   timebox( )
       EXAMPLE
	    my $time = $d->timebox( text => 'What time?' );
	    my ($h,$m,$s) = split(/\:/,$time);

	    # or alternatively...

	    $d->timebox( text => 'What time?',
			 hour => 10, minute => 01, second => 01	);
	    my ($h,$m,$s) = $d->ra();

       DESCRIPTION
		 Present the user with a time widget preset with the current
		 time.

       RETURNS
		 a SCALAR if the response is OK	and FALSE \fIs0(0) for
		 anything else.

   tailbox( )
       EXAMPLE
	    $d->tailbox( path => '/path/to/a/text/file'	);

       DESCRIPTION
		 Present the end user with a scrolling box containing the
		 contents of the given text file. The contents of the window
		 is constantly updated in a similar manner to that of the unix
		 tail(1) command.

       RETURNS
		 TRUE \fIs0(1) if the response is OK and FALSE \fIs0(0)	for
		 anything else.

   gauge_start(	)
       EXAMPLE
	    $d->gauge_start( text => 'gauge...', percentage => 1 );

       DESCRIPTION
		 Display a meter bar to	the user. This get's the widget
		 realized but requires the use of the other gauge_*() methods
		 for functionality.

       RETURNS
		 TRUE \fIs0(1) if the widget loaded fine and FALSE \fIs0(0)
		 for anything else.

   gauge_inc( )
       EXAMPLE
	    $d->gauge_inc( 1 );

       DESCRIPTION
		 Increment the meter by	the given amount.

       RETURNS
		 TRUE \fIs0(1) if the widget incremented fine and FALSE
		 \fIs0(0) for anything else.

   gauge_dec( )
       EXAMPLE
	    $d->gauge_dec( 1 );

       DESCRIPTION
		 Decrement the meter by	the given amount.

       RETURNS
		 TRUE \fIs0(1) if the widget incremented fine and FALSE
		 \fIs0(0) for anything else.

   gauge_set( )
       EXAMPLE
	    $d->gauge_set( 99 );

       DESCRIPTION
		 Set the meter bar to the given	amount.

       RETURNS
		 TRUE \fIs0(1) if the widget set fine and FALSE	\fIs0(0) for
		 anything else.

   gauge_text( )
       EXAMPLE
	    $d->gauge_text( 'string' );

       DESCRIPTION
		 Set the meter bar message to the given	string.

       RETURNS
		 TRUE \fIs0(1) if the widget set fine and FALSE	\fIs0(0) for
		 anything else.

   gauge_stop( )
       EXAMPLE
	    $d->gauge_stop();

       DESCRIPTION
		 End the meter bar widget process. One of the flaws with
		 gdialog is that the gauge widget does not close properly and
		 requies the end user to close the gauge window	when 100% has
		 been reached. This is the second reason why I'm glad gdialog
		 is going the way of the dodo.

       RETURNS
		 TRUE \fIs0(1) if the widget closed fine and FALSE \fIs0(0)
		 for anything else.

SEE ALSO
       PERLDOC
	  UI::Dialog
	  UI::Dialog::Console
	  UI::Dialog::Backend

       MAN FILES
	 dialog(1)

BUGS
       Please email the	author with any	bug reports. Include the name of the
       module in the subject line.

AUTHOR
       Kevin C.	Krinke,	<kevin@krinke.ca>

COPYRIGHT AND LICENSE
	Copyright (C) 2004-2016	 Kevin C. Krinke <kevin@krinke.ca>

	This library is	free software; you can redistribute it and/or
	modify it under	the terms of the GNU Lesser General Public
	License	as published by	the Free Software Foundation; either
	version	2.1 of the License, or (at your	option)	any later version.

	This library is	distributed in the hope	that it	will be	useful,
	but WITHOUT ANY	WARRANTY; without even the implied warranty of
	MERCHANTABILITY	or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
	Lesser General Public License for more details.

	You should have	received a copy	of the GNU Lesser General Public
	License	along with this	library; if not, write to the Free Software
	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA

perl v5.24.1			  2016-02-03   UI::Dialog::Backend::CDialog(3)

NAME | SYNOPSIS | ABSTRACT | DESCRIPTION | EXPORT | INHERITS | CONSTRUCTOR | WIDGET METHODS | SEE ALSO | BUGS | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=UI::Dialog::Backend::CDialog&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help