static GOptionGroup* get_option_group (MuConfigCmd cmd) { switch (cmd) { case MU_CONFIG_CMD_CFIND: return config_options_group_cfind(); case MU_CONFIG_CMD_EXTRACT: return config_options_group_extract(); case MU_CONFIG_CMD_FIND: return config_options_group_find(); case MU_CONFIG_CMD_INDEX: return config_options_group_index(); case MU_CONFIG_CMD_MKDIR: return config_options_group_mkdir(); case MU_CONFIG_CMD_SERVER: return config_options_group_server(); case MU_CONFIG_CMD_SCRIPT: return config_options_group_script(); case MU_CONFIG_CMD_VERIFY: return config_options_group_verify(); case MU_CONFIG_CMD_VIEW: return config_options_group_view(); default: return NULL; /* no group to add */ } }
static void add_context_group (GOptionContext *context, MuConfig *opts) { GOptionGroup *group; switch (opts->cmd) { case MU_CONFIG_CMD_INDEX: group = config_options_group_index (opts); break; case MU_CONFIG_CMD_FIND: group = config_options_group_find (opts); break; case MU_CONFIG_CMD_MKDIR: group = config_options_group_mkdir (opts); break; case MU_CONFIG_CMD_EXTRACT: group = config_options_group_extract (opts); break; case MU_CONFIG_CMD_CFIND: group = config_options_group_cfind (opts); break; case MU_CONFIG_CMD_VIEW: group = config_options_group_view (opts); break; case MU_CONFIG_CMD_SERVER: group = config_options_group_server (opts); break; default: return; /* no group to add */ } g_option_context_add_group(context, group); }