void owl_variable_get_help(const owl_variable *v, owl_fmtext *fm) { char *tostring; const char *default_str; owl_fmtext_append_bold(fm, "OWL VARIABLE\n\n"); owl_fmtext_append_normal(fm, OWL_TABSTR); owl_fmtext_append_normal(fm, owl_variable_get_name(v)); owl_fmtext_append_normal(fm, " - "); owl_fmtext_append_normal(fm, owl_variable_get_summary(v)); owl_fmtext_append_normal(fm, "\n\n"); owl_fmtext_append_normal(fm, "Current: "); tostring = owl_variable_get_tostring(v); owl_fmtext_append_normal(fm, (tostring ? tostring : "<null>")); g_free(tostring); owl_fmtext_append_normal(fm, "\n\n"); default_str = owl_variable_get_default_tostring(v); owl_fmtext_append_normal(fm, "Default: "); owl_fmtext_append_normal(fm, (default_str ? default_str : "<null>")); owl_fmtext_append_normal(fm, "\n\n"); owl_fmtext_append_normal(fm, "Valid Settings: "); owl_fmtext_append_normal(fm, owl_variable_get_validsettings(v)); owl_fmtext_append_normal(fm, "\n\n"); if (v->description && *v->description) { owl_fmtext_append_normal(fm, "Description:\n"); owl_fmtext_append_normal(fm, owl_variable_get_description(v)); owl_fmtext_append_normal(fm, "\n\n"); } }
void owl_variable_describe(const owl_variable *v, owl_fmtext *fm) { const char *default_str = owl_variable_get_default_tostring(v); char *default_buf; if (default_str) default_buf = g_strdup_printf("'%s'", default_str); else default_buf = g_strdup("<null>"); owl_fmtext_appendf_normal(fm, OWL_TABSTR "%-20s - %s (default: %s)\n", owl_variable_get_name(v), owl_variable_get_summary(v), default_buf); g_free(default_buf); }
void owl_variable_describe(owl_vardict *d, char *name, owl_fmtext *fm) { char defaultbuf[50]; char buf[1024]; int buflen = 1023; owl_variable *v; if (!name || (v = owl_dict_find_element(d, name)) == NULL || !v->get_fn) { snprintf(buf, buflen, " No such variable '%s'\n", name); owl_fmtext_append_normal(fm, buf); return; } if (v->type == OWL_VARIABLE_INT || v->type == OWL_VARIABLE_BOOL) { v->get_tostring_fn(v, defaultbuf, 50, &(v->ival_default)); } else { v->get_tostring_fn(v, defaultbuf, 50, v->pval_default); } snprintf(buf, buflen, OWL_TABSTR "%-20s - %s (default: '%s')\n", v->name, owl_variable_get_summary(v), defaultbuf); owl_fmtext_append_normal(fm, buf); }