1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-10 03:33:12 +02:00

api: add function config_option_get_string in plugin API

This commit is contained in:
Sébastien Helleu
2017-05-30 20:23:01 +02:00
parent f131b9f7de
commit f6a8c28d2d
9 changed files with 203 additions and 2 deletions
+24 -1
View File
@@ -1906,7 +1906,30 @@ config_file_option_value_to_string (struct t_config_option *option,
}
/*
* Gets a pointer of an option property.
* Gets a string value of an option property.
*/
const char *
config_file_option_get_string (struct t_config_option *option,
const char *property)
{
if (!option || !property)
return NULL;
if (string_strcasecmp (property, "name") == 0)
return option->name;
else if (string_strcasecmp (property, "parent_name") == 0)
return option->parent_name;
else if (string_strcasecmp (property, "type") == 0)
return config_option_type_string[option->type];
else if (string_strcasecmp (property, "description") == 0)
return option->description;
return NULL;
}
/*
* Gets a pointer on an option property.
*/
void *
+2
View File
@@ -264,6 +264,8 @@ extern char *config_file_option_value_to_string (struct t_config_option *option,
int default_value,
int add_delimiters,
int use_colors);
extern const char *config_file_option_get_string (struct t_config_option *option,
const char *property);
extern void *config_file_option_get_pointer (struct t_config_option *option,
const char *property);
extern int config_file_option_is_null (struct t_config_option *option);
+1
View File
@@ -728,6 +728,7 @@ plugin_load (const char *filename, int init_plugin, int argc, char **argv)
new_plugin->config_option_set_null = &config_file_option_set_null;
new_plugin->config_option_unset = &config_file_option_unset;
new_plugin->config_option_rename = &config_file_option_rename;
new_plugin->config_option_get_string = &config_file_option_get_string;
new_plugin->config_option_get_pointer = &config_file_option_get_pointer;
new_plugin->config_option_is_null = &config_file_option_is_null;
new_plugin->config_option_default_is_null = &config_file_option_default_is_null;
+5 -1
View File
@@ -59,7 +59,7 @@ struct timeval;
* please change the date with current one; for a second change at same
* date, increment the 01, otherwise please keep 01.
*/
#define WEECHAT_PLUGIN_API_VERSION "20170401-01"
#define WEECHAT_PLUGIN_API_VERSION "20170530-01"
/* macros for defining plugin infos */
#define WEECHAT_PLUGIN_NAME(__name) \
@@ -561,6 +561,8 @@ struct t_weechat_plugin
int (*config_option_unset) (struct t_config_option *option);
void (*config_option_rename) (struct t_config_option *option,
const char *new_name);
const char *(*config_option_get_string) (struct t_config_option *option,
const char *property);
void *(*config_option_get_pointer) (struct t_config_option *option,
const char *property);
int (*config_option_is_null) (struct t_config_option *option);
@@ -1492,6 +1494,8 @@ extern int weechat_plugin_end (struct t_weechat_plugin *plugin);
(weechat_plugin->config_option_unset)(__option)
#define weechat_config_option_rename(__option, __new_name) \
(weechat_plugin->config_option_rename)(__option, __new_name)
#define weechat_config_option_get_string(__option, __property) \
(weechat_plugin->config_option_get_string)(__option, __property)
#define weechat_config_option_get_pointer(__option, __property) \
(weechat_plugin->config_option_get_pointer)(__option, __property)
#define weechat_config_option_is_null(__option) \