aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago de Arruda <tpadilha84@gmail.com>2014-05-11 10:21:01 -0300
committerThiago de Arruda <tpadilha84@gmail.com>2014-05-13 14:11:32 -0300
commit17053bbc3967d6cd8152f26d909473d4e0629f70 (patch)
tree9736a1098c368e03a8f860603a65d74aa6bb3138
parenta132effd35801ea60b178f6dc6707159c21fcbf4 (diff)
downloadrneovim-17053bbc3967d6cd8152f26d909473d4e0629f70.tar.gz
rneovim-17053bbc3967d6cd8152f26d909473d4e0629f70.tar.bz2
rneovim-17053bbc3967d6cd8152f26d909473d4e0629f70.zip
API: Implement window_{get,set}_var
-rw-r--r--src/api/window.c20
-rw-r--r--src/api/window.h3
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
///