GNU/Linux |
Debian 6.0.2(Squeeze) |
|
![]() |
Glib::OptionGroup(3pm) |
![]() |
Glib::OptionGroup − group of options for command line option parsing
my ($verbose, $source, $filenames) = ('', undef, []); my $entries = [ { long_name => 'verbose', short_name => 'v', arg_type => 'none', arg_value => \$verbose, description => 'be verbose' }, { long_name => 'source', short_name => 's', arg_type => 'string', arg_value => \$source, description => 'set the source', arg_description => 'source' }, [ 'filenames', 'f', 'filename−array', \$filenames ], ]; my $context = Glib::OptionContext−>new ('− urgsify your life'); $context−>add_main_entries ($entries, 'C'); $context−>parse (); # $verbose, $source, and $filenames are now updated according to the # command line options given
Glib::Boxed +−−−−Glib::OptionGroup
optioncontext = Glib::OptionContext−>new ($parameter_string)
• |
$parameter_string (string) |
optiongroup
= Glib::OptionGroup−>new (key => value, ...)
Creates a new option group from the given key-value pairs.
The valid keys are name, description, help_description, and
entries. The first three specify strings while the last one,
entries, specifies an array reference of option entries.
Example:
my $group = Glib::OptionGroup−>new ( name => 'urgs', description => 'Urgs Urgs Urgs', help_description => 'Help with Urgs', entries => \@entries);
An option entry is a hash reference like this:
{ long_name => 'verbose', short_name => 'v', flags => [qw/reverse hidden in−main/], arg_type => 'none', arg_value => \$verbose, description => 'verbose desc.', arg_description => 'verbose arg desc.' }
Of those keys only long_name, arg_type, and arg_value are required. So this is a valid option entry too:
{ long_name => 'package−names', arg_type => 'string−array', arg_value => \$package_names }
For convenience, option entries can also be specified as array references containing long_name, short_name, arg_type, and arg_value:
[ 'filenames', 'f', 'filename−array', \$filenames ]
If you don’t want an option to have a short name, specify undef for it:
[ 'filenames', undef, 'filename−array', \$filenames ]
$context−>add_group ($group)
• |
$group (Glib::OptionGroup) |
$context−>add_main_entries ($entries, $translation_domain)
• |
$entries (scalar) reference to an array of option entries | ||
• |
$translation_domain (string) |
boolean =
$context−>get_help_enabled
$context−>set_help_enabled ($help_enabled)
• |
$help_enabled (boolean) |
boolean =
$context−>get_ignore_unknown_options
$context−>set_ignore_unknown_options
($ignore_unknown)
• |
$ignore_unknown (boolean) |
optiongroup
= $context−>get_main_group
$context−>set_main_group ($group)
• |
$group (Glib::OptionGroup) |
boolean =
$context−>parse
This method works directly on @ARGV.
May croak with a Glib::Error in $@ on failure.
$group−>set_translate_func ($func, $data=undef)
• |
$func (scalar) |
|||
• |
$data (scalar) |
$group−>set_translation_domain ($domain)
• |
$domain (string) |
enum Glib::OptionArg
• |
’none’ / ’G_OPTION_ARG_NONE’ |
|||
• |
’string’ / ’G_OPTION_ARG_STRING’ |
|||
• |
’int’ / ’G_OPTION_ARG_INT’ |
|||
• |
’filename’ / ’G_OPTION_ARG_FILENAME’ |
|||
• |
’string−array’ / ’G_OPTION_ARG_STRING_ARRAY’ |
|||
• |
’filename−array’ / ’G_OPTION_ARG_FILENAME_ARRAY’ |
|||
• |
’double’ / ’G_OPTION_ARG_DOUBLE’ |
|||
• |
’int64’ / ’G_OPTION_ARG_INT64’ |
flags Glib::OptionFlags
• |
’hidden’ / ’G_OPTION_FLAG_HIDDEN’ |
|||
• |
’in−main’ / ’G_OPTION_FLAG_IN_MAIN’ |
|||
• |
’reverse’ / ’G_OPTION_FLAG_REVERSE’ |
|||
• |
’no−arg’ / ’G_OPTION_FLAG_NO_ARG’ |
|||
• |
’filename’ / ’G_OPTION_FLAG_FILENAME’ |
|||
• |
’optional−arg’ / ’G_OPTION_FLAG_OPTIONAL_ARG’ |
|||
• |
’noalias’ / ’G_OPTION_FLAG_NOALIAS’ |
Glib, Glib::Boxed
Copyright (C) 2003−2009 by the gtk2−perl team.
This software is licensed under the LGPL . See Glib for a full notice.
![]() |
Glib::OptionGroup(3pm) | ![]() |