version 1.58, 2020/05/16 16:35:13 |
version 1.59, 2020/06/16 08:18:34 |
|
|
}; |
}; |
|
|
static struct options_entry *options_add(struct options *, const char *); |
static struct options_entry *options_add(struct options *, const char *); |
|
static void options_remove(struct options_entry *); |
|
|
#define OPTIONS_IS_STRING(o) \ |
#define OPTIONS_IS_STRING(o) \ |
((o)->tableentry == NULL || \ |
((o)->tableentry == NULL || \ |
|
|
return (o); |
return (o); |
} |
} |
|
|
void |
static void |
options_remove(struct options_entry *o) |
options_remove(struct options_entry *o) |
{ |
{ |
struct options *oo = o->owner; |
struct options *oo = o->owner; |
|
|
if (loop->session != NULL) |
if (loop->session != NULL) |
server_redraw_client(loop); |
server_redraw_client(loop); |
} |
} |
|
} |
|
|
|
int |
|
options_remove_or_default(struct options_entry *o, int idx, char **cause) |
|
{ |
|
struct options *oo = o->owner; |
|
|
|
if (idx == -1) { |
|
if (o->tableentry != NULL && |
|
(oo == global_options || |
|
oo == global_s_options || |
|
oo == global_w_options)) |
|
options_default(oo, o->tableentry); |
|
else |
|
options_remove(o); |
|
} else if (options_array_set(o, idx, NULL, 0, cause) != 0) |
|
return (-1); |
|
return (0); |
} |
} |