Glib::OptionGroup(3pm)

NAME

Glib::OptionGroup - group of options for command line option parsing

SYNOPSIS

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

HIERARCHY

Glib::Boxed
+----Glib::OptionGroup

METHODS

optioncontext = Glib::OptionContext->new ($parameter_string)
o $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)
o $group (Glib::OptionGroup)
$context->add_main_entries ($entries, $translation_domain)
o $entries (scalar) reference to an array of option entries
o $translation_domain (string)
boolean = $context->get_help_enabled $context->set_help_enabled ($help_enabled)
o $help_enabled (boolean)
boolean = $context->get_ignore_unknown_options $context->set_ignore_unknown_options ($ignore_unknown)
o $ignore_unknown (boolean)
optiongroup = $context->get_main_group $context->set_main_group ($group)
o $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)
o $func (scalar)
o $data (scalar)
$group->set_translation_domain ($domain)
o $domain (string)

ENUMS AND FLAGS

enum Glib::OptionArg
o 'none' / 'G_OPTION_ARG_NONE'
o 'string' / 'G_OPTION_ARG_STRING'
o 'int' / 'G_OPTION_ARG_INT'
o 'filename' / 'G_OPTION_ARG_FILENAME'
o 'string-array' / 'G_OPTION_ARG_STRING_ARRAY'
o 'filename-array' / 'G_OPTION_ARG_FILENAME_ARRAY'
o 'double' / 'G_OPTION_ARG_DOUBLE'
o 'int64' / 'G_OPTION_ARG_INT64'
flags Glib::OptionFlags
o 'hidden' / 'G_OPTION_FLAG_HIDDEN'
o 'in-main' / 'G_OPTION_FLAG_IN_MAIN'
o 'reverse' / 'G_OPTION_FLAG_REVERSE'
o 'no-arg' / 'G_OPTION_FLAG_NO_ARG'
o 'filename' / 'G_OPTION_FLAG_FILENAME'
o 'optional-arg' / 'G_OPTION_FLAG_OPTIONAL_ARG'
o 'noalias' / 'G_OPTION_FLAG_NOALIAS'

SEE ALSO

Glib, Glib::Boxed

COPYRIGHT

Copyright (C) 2003-2009 by the gtk2-perl team.

This software is licensed under the LGPL. See Glib for a full notice.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout