Added string settings to C and Python examples
This commit is contained in:
@@ -321,8 +321,45 @@ booleansetting(char *op, char *group, char *key, char *value_str)
|
||||
char buf[5 + strlen(group) + 2 + strlen(key) + 4 + strlen(value_str)];
|
||||
sprintf(buf, "Set [%s] %s to %s", group, key, value_str);
|
||||
prof_win_show(plugin_win, buf);
|
||||
} else {
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
stringsetting(char *op, char *group, char *key, char *value)
|
||||
{
|
||||
if (op == NULL || group == NULL || key == NULL) {
|
||||
prof_cons_bad_cmd_usage("/c-test");
|
||||
return;
|
||||
}
|
||||
|
||||
if ((strcmp(op, "get") != 0) && (strcmp(op, "set") != 0)) {
|
||||
prof_cons_bad_cmd_usage("/c-test");
|
||||
return;
|
||||
}
|
||||
|
||||
if ((strcmp(op, "set") == 0) && (value == NULL)) {
|
||||
prof_cons_bad_cmd_usage("/c-test");
|
||||
return;
|
||||
}
|
||||
|
||||
if (strcmp(op, "get") == 0) {
|
||||
create_win();
|
||||
prof_win_focus(plugin_win);
|
||||
char *res = prof_settings_get_string(group, key, NULL);
|
||||
if (res) {
|
||||
char buf[16 + strlen(res)];
|
||||
sprintf(buf, "String setting: %s", res);
|
||||
prof_win_show(plugin_win, buf);
|
||||
} else {
|
||||
prof_win_show(plugin_win, "String setting: NULL");
|
||||
}
|
||||
} else if (strcmp(op, "set") == 0) {
|
||||
create_win();
|
||||
prof_win_focus(plugin_win);
|
||||
prof_settings_set_string(group, key, value);
|
||||
char buf[5 + strlen(group) + 2 + strlen(key) + 4 + strlen(value)];
|
||||
sprintf(buf, "Set [%s] %s to %s", group, key, value);
|
||||
prof_win_show(plugin_win, buf);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -342,6 +379,7 @@ cmd_ctest(char **args)
|
||||
else if (strcmp(args[0], "count") == 0) docount();
|
||||
else if (strcmp(args[0], "ping") == 0) doping(args[1]);
|
||||
else if (strcmp(args[0], "boolean") == 0) booleansetting(args[1], args[2], args[3], args[4]);
|
||||
else if (strcmp(args[0], "string") == 0) stringsetting(args[1], args[2], args[3], args[4]);
|
||||
else prof_cons_bad_cmd_usage("/c-test");
|
||||
}
|
||||
|
||||
@@ -374,6 +412,8 @@ prof_init(const char * const version, const char * const status)
|
||||
"/c-test ping <jid>",
|
||||
"/c-test boolean get <group> <key>",
|
||||
"/c-test boolean set <group> <key> <value>",
|
||||
"/c-test string get <group> <key>",
|
||||
"/c-test string set <group> <key> <value>",
|
||||
NULL
|
||||
};
|
||||
const char *description = "C test plugin. All commands focus the plugin window.";
|
||||
@@ -393,6 +433,8 @@ prof_init(const char * const version, const char * const status)
|
||||
{ "ping <jid>", "Send an XMPP ping to the specified Jabber ID" },
|
||||
{ "boolean get <group> <key>", "Get a boolean setting" },
|
||||
{ "boolean set <group> <key> <value>", "Set a boolean setting" },
|
||||
{ "string get <group> <key>", "Get a string setting" },
|
||||
{ "string set <group> <key> <value>", "Set a string setting" },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
@@ -407,7 +449,7 @@ prof_init(const char * const version, const char * const status)
|
||||
|
||||
prof_register_command("/c-test", 1, 5, synopsis, description, args, examples, cmd_ctest);
|
||||
|
||||
char *cmd_ac[] = { "consalert", "consshow", "consshow_t", "constest", "winshow", "winshow_t", "notify", "sendline", "get", "log", "count", "ping", "boolean", NULL };
|
||||
char *cmd_ac[] = { "consalert", "consshow", "consshow_t", "constest", "winshow", "winshow_t", "notify", "sendline", "get", "log", "count", "ping", "boolean", "string", NULL };
|
||||
prof_register_ac("/c-test", cmd_ac);
|
||||
|
||||
char *get_ac[] = { "recipient", "room", NULL };
|
||||
@@ -419,6 +461,9 @@ prof_init(const char * const version, const char * const status)
|
||||
char *boolean_ac[] = { "get", "set", NULL };
|
||||
prof_register_ac("/c-test boolean", boolean_ac);
|
||||
|
||||
char *string_ac[] = { "get", "set", NULL };
|
||||
prof_register_ac("/c-test string", string_ac);
|
||||
|
||||
prof_register_timed(timed_callback, 30);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user