From 17053bbc3967d6cd8152f26d909473d4e0629f70 Mon Sep 17 00:00:00 2001 From: Thiago de Arruda Date: Sun, 11 May 2014 10:21:01 -0300 Subject: [PATCH] API: Implement window_{get,set}_var --- src/api/window.c | 20 +++++++++++++++++--- 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 ///