# Glib::OptionGroup Class Reference

An OptionGroup defines the options in a single group. More...

`#include <glibmm/optiongroup.h>`

List of all members.

## Public Types

typedef sigc::slot < Glib::ustring, const Glib::ustring& > | SlotTranslate
| For example Glib::ustring on_translate(const Glib::ustring& original);.
typedef std::vector < Glib::ustring > | vecustrings
typedef std::vector< std::string > | vecstrings

## Public Member Functions

| OptionGroup (const Glib::ustring& name, const Glib::ustring& description, const Glib::ustring& help_description=Glib::ustring())
| OptionGroup (GOptionGroup* castitem)
| This always takes ownership of the underlying GOptionGroup, so it is only useful with C functions that return newly-allocated GOptionGroups.
virtual | ~OptionGroup ()
virtual bool | on_pre_parse (OptionContext& context, OptionGroup& group)
virtual bool | on_post_parse (OptionContext& context, OptionGroup& group)
virtual void | on_error (OptionContext& context, OptionGroup& group)
void | add_entry (const OptionEntry& entry)
void | add_entry (const OptionEntry& entry, bool&arg)
void | add_entry (const OptionEntry& entry, int&arg)
void | add_entry (const OptionEntry& entry, double&arg)
void | add_entry (const OptionEntry& entry, Glib::ustring&arg)
void | add_entry_filename (const OptionEntry& entry, std::string&arg)
void | add_entry (const OptionEntry& entry, vecustrings&arg)
void | add_entry_filename (const OptionEntry& entry, vecstrings&arg)
void | set_translate_func (const SlotTranslate& slot)
| Sets the function which is used to translate user-visible strings, for --help output.
void | set_translation_domain (const Glib::ustring& domain)
| A convenience function to use gettext() for translating user-visible strings.
GOptionGroup* | gobj ()
const GOptionGroup* | gobj () const
GOptionGroup* | gobj_give_ownership ()

## Detailed Description

An OptionGroup defines the options in a single group.

Libraries which need to parse commandline options are expected to provide a function that allows their OptionGroups to be added to the application's OptionContext.

## Member Typedef Documentation

typedef sigc::slot<Glib::ustring, const Glib::ustring&> Glib::OptionGroup::SlotTranslate

For example Glib::ustring on_translate(const Glib::ustring& original);.

typedef std::vector<std::string> Glib::OptionGroup::vecstrings

typedef std::vector<Glib::ustring> Glib::OptionGroup::vecustrings

## Constructor & Destructor Documentation

Glib::OptionGroup::OptionGroup | ( | const Glib::ustring& | name,
|  | const Glib::ustring& | description,
|  | const Glib::ustring& | help_description = `Glib::ustring()`
| ) |  |

Glib::OptionGroup::OptionGroup | ( | GOptionGroup * | castitem ) | `[explicit]`

This always takes ownership of the underlying GOptionGroup, so it is only useful with C functions that return newly-allocated GOptionGroups.

virtual Glib::OptionGroup::~OptionGroup | ( | ) | `[virtual]`

## Member Function Documentation

void Glib::OptionGroup::add_entry | ( | const OptionEntry& | entry ) |

void Glib::OptionGroup::add_entry | ( | const OptionEntry& | entry,
|  | bool & | arg
| ) |  |

void Glib::OptionGroup::add_entry | ( | const OptionEntry& | entry,
|  | Glib::ustring& | arg
| ) |  |

void Glib::OptionGroup::add_entry | ( | const OptionEntry& | entry,
|  | vecustrings & | arg
| ) |  |

void Glib::OptionGroup::add_entry | ( | const OptionEntry& | entry,
|  | int & | arg
| ) |  |

void Glib::OptionGroup::add_entry | ( | const OptionEntry& | entry,
|  | double & | arg
| ) |  |

void Glib::OptionGroup::add_entry_filename | ( | const OptionEntry& | entry,
|  | std::string & | arg
| ) |  |

void Glib::OptionGroup::add_entry_filename | ( | const OptionEntry& | entry,
|  | vecstrings & | arg
| ) |  |

GOptionGroup* Glib::OptionGroup::gobj | ( | ) | `[inline]`

const GOptionGroup* Glib::OptionGroup::gobj | ( | ) | const`[inline]`

GOptionGroup* Glib::OptionGroup::gobj_give_ownership | ( | ) |

virtual void Glib::OptionGroup::on_error | ( | OptionContext& | context,
|  | OptionGroup& | group
| ) |  | `[virtual]`

virtual bool Glib::OptionGroup::on_post_parse | ( | OptionContext& | context,
|  | OptionGroup& | group
| ) |  | `[virtual]`

virtual bool Glib::OptionGroup::on_pre_parse | ( | OptionContext& | context,
|  | OptionGroup& | group
| ) |  | `[virtual]`

void Glib::OptionGroup::set_translate_func | ( | const SlotTranslate & | slot ) |

Sets the function which is used to translate user-visible strings, for --help output.

Different groups can use a different SlotTranslate. If a translate function is not set, strings are not translated.

If you are using gettext(), you only need to set the translation domain, see set_translation_domain().

Parameters:

  slot | the slot to be used for translation.

Since glibmm 2.28:

void Glib::OptionGroup::set_translation_domain | ( | const Glib::ustring& | domain ) |

A convenience function to use gettext() for translating user-visible strings.

Since glibmm 2.6:

Parameters:

  domain | The domain to use.