kopia lustrzana https://github.com/Hamlib/Hamlib
set_level/get_level: Improved help "?" to show already supported ext_levels
Author: Nirgal Vourgère <contact_hamlib@nirgal.com>Hamlib-1.2.14
rodzic
0bfec55f10
commit
4e24dd6eee
|
@ -1199,7 +1199,12 @@ declare_proto_rig(set_level)
|
|||
if (!strcmp(arg1, "?")) {
|
||||
char s[SPRINTF_MAX_SIZE];
|
||||
sprintf_level(s, rig->state.has_set_level);
|
||||
fprintf(fout, "%s\n", s);
|
||||
fputs(s, fout);
|
||||
if (rig->caps->set_ext_level) {
|
||||
sprintf_level_ext(s, rig->caps->extlevels);
|
||||
fputs(s, fout);
|
||||
}
|
||||
fputc('\n', fout);
|
||||
return RIG_OK;
|
||||
}
|
||||
|
||||
|
@ -1249,7 +1254,12 @@ declare_proto_rig(get_level)
|
|||
if (!strcmp(arg1, "?")) {
|
||||
char s[SPRINTF_MAX_SIZE];
|
||||
sprintf_level(s, rig->state.has_get_level);
|
||||
fprintf(fout, "%s\n", s);
|
||||
fputs(s, fout);
|
||||
if (rig->caps->get_ext_level) {
|
||||
sprintf_level_ext(s, rig->caps->extlevels);
|
||||
fputs(s, fout);
|
||||
}
|
||||
fputc('\n', fout);
|
||||
return RIG_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -126,6 +126,34 @@ int sprintf_level(char *str, setting_t level)
|
|||
return len;
|
||||
}
|
||||
|
||||
int sprintf_level_ext(char *str, const struct confparams *extlevels)
|
||||
{
|
||||
int len=0;
|
||||
|
||||
*str = '\0';
|
||||
if (!extlevels)
|
||||
return 0;
|
||||
|
||||
for (; extlevels->token != RIG_CONF_END; extlevels++) {
|
||||
if (!extlevels->name)
|
||||
continue; /* no name */
|
||||
switch (extlevels->type) {
|
||||
case RIG_CONF_CHECKBUTTON:
|
||||
case RIG_CONF_COMBO:
|
||||
case RIG_CONF_NUMERIC:
|
||||
case RIG_CONF_STRING:
|
||||
strcat(str, extlevels->name);
|
||||
strcat(str, " ");
|
||||
len += strlen(extlevels->name) + 1;
|
||||
break;
|
||||
case RIG_CONF_BUTTON:
|
||||
/* ignore case RIG_CONF_BUTTON */
|
||||
break;
|
||||
}
|
||||
}
|
||||
return len;
|
||||
}
|
||||
|
||||
int sprintf_level_gran(char *str, setting_t level, const gran_t gran[])
|
||||
{
|
||||
int i, len=0;
|
||||
|
|
|
@ -33,6 +33,7 @@ extern int sprintf_mode(char *str, rmode_t);
|
|||
extern int sprintf_vfo(char *str, vfo_t);
|
||||
extern int sprintf_func(char *str, setting_t);
|
||||
extern int sprintf_level(char *str, setting_t);
|
||||
extern int sprintf_level_ext(char *str, const struct confparams *);
|
||||
extern int sprintf_level_gran(char *str, setting_t, const gran_t gran[]);
|
||||
extern int sprintf_parm(char *str, setting_t);
|
||||
extern int sprintf_parm_gran(char *str, setting_t, const gran_t gran[]);
|
||||
|
|
Ładowanie…
Reference in New Issue