mirror of
https://github.com/tmux/tmux.git
synced 2025-09-02 21:56:57 +00:00
Add popup-border-lines option to set popup line style, from Alexis
Hildebrandt, GitHub issue 2930.
This commit is contained in:
33
options.c
33
options.c
@ -989,28 +989,39 @@ options_from_string_flag(struct options *oo, const char *name,
|
||||
return (0);
|
||||
}
|
||||
|
||||
int
|
||||
options_find_choice(const struct options_table_entry *oe, const char *value,
|
||||
char **cause)
|
||||
{
|
||||
const char **cp;
|
||||
int n = 0, choice = -1;
|
||||
|
||||
for (cp = oe->choices; *cp != NULL; cp++) {
|
||||
if (strcmp(*cp, value) == 0)
|
||||
choice = n;
|
||||
n++;
|
||||
}
|
||||
if (choice == -1) {
|
||||
xasprintf(cause, "unknown value: %s", value);
|
||||
return (-1);
|
||||
}
|
||||
return (choice);
|
||||
}
|
||||
|
||||
static int
|
||||
options_from_string_choice(const struct options_table_entry *oe,
|
||||
struct options *oo, const char *name, const char *value, char **cause)
|
||||
{
|
||||
const char **cp;
|
||||
int n, choice = -1;
|
||||
int choice = -1;
|
||||
|
||||
if (value == NULL) {
|
||||
choice = options_get_number(oo, name);
|
||||
if (choice < 2)
|
||||
choice = !choice;
|
||||
} else {
|
||||
n = 0;
|
||||
for (cp = oe->choices; *cp != NULL; cp++) {
|
||||
if (strcmp(*cp, value) == 0)
|
||||
choice = n;
|
||||
n++;
|
||||
}
|
||||
if (choice == -1) {
|
||||
xasprintf(cause, "unknown value: %s", value);
|
||||
choice = options_find_choice(oe, value, cause);
|
||||
if (choice < 0)
|
||||
return (-1);
|
||||
}
|
||||
}
|
||||
options_set_number(oo, name, choice);
|
||||
return (0);
|
||||
|
Reference in New Issue
Block a user