diff options
-rw-r--r-- | src/api/window.c | 20 | ||||
-rw-r--r-- | src/api/window.h | 3 |
2 files changed, 19 insertions, 4 deletions
diff --git a/src/api/window.c b/src/api/window.c index 019e63aec3..661b85f512 100644 --- a/src/api/window.c +++ b/src/api/window.c @@ -112,12 +112,26 @@ void window_set_width(Window window, int64_t width, Error *err) Object window_get_var(Window window, String name, Error *err) { - abort(); + Object rv; + win_T *win = find_window(window, err); + + if (!win) { + return rv; + } + + return dict_get_value(win->w_vars, name, false, err); } -void window_set_var(Window window, String name, Object value, Error *err) +Object window_set_var(Window window, String name, Object value, Error *err) { - abort(); + Object rv; + win_T *win = find_window(window, err); + + if (!win) { + return rv; + } + + return dict_set_value(win->w_vars, name, value, err); } String window_get_option(Window window, String name, Error *err) diff --git a/src/api/window.h b/src/api/window.h index 96ff619d88..ee9a6b0834 100644 --- a/src/api/window.h +++ b/src/api/window.h @@ -71,7 +71,8 @@ Object window_get_var(Window window, String name, Error *err); /// @param name The variable name /// @param value The variable value /// @param[out] err Details of an error that may have occurred -void window_set_var(Window window, String name, Object value, Error *err); +/// @return The old value +Object window_set_var(Window window, String name, Object value, Error *err); /// Gets a window option value /// |