mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
API: Implement tabpage_{get,set}_var
This commit is contained in:
parent
bfe3b6712e
commit
e026be46af
@ -290,6 +290,17 @@ win_T * find_window(Window window, Error *err)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
tabpage_T * find_tab(Tabpage tabpage, Error *err)
|
||||
{
|
||||
tabpage_T *rv = find_tabpage(tabpage);
|
||||
|
||||
if (!rv) {
|
||||
set_api_error("Invalid tabpage id", err);
|
||||
}
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
||||
static bool object_to_vim(Object obj, typval_T *tv, Error *err)
|
||||
{
|
||||
tv->v_type = VAR_UNKNOWN;
|
||||
|
@ -80,5 +80,12 @@ buf_T *find_buffer(Buffer buffer, Error *err);
|
||||
/// @return the window pointer
|
||||
win_T * find_window(Window window, Error *err);
|
||||
|
||||
/// Finds the pointer for a tabpage number
|
||||
///
|
||||
/// @param tabpage the tabpage number
|
||||
/// @param[out] err Details of an error that may have occurred
|
||||
/// @return the tabpage pointer
|
||||
tabpage_T * find_tab(Tabpage tabpage, Error *err);
|
||||
|
||||
#endif // NEOVIM_API_HELPERS_H
|
||||
|
||||
|
@ -4,20 +4,36 @@
|
||||
|
||||
#include "api/tabpage.h"
|
||||
#include "api/defs.h"
|
||||
#include "api/helpers.h"
|
||||
|
||||
int64_t tabpage_get_window_count(Tabpage tabpage, Error *err)
|
||||
{
|
||||
abort();
|
||||
set_api_error("Not implemented", err);
|
||||
return 0;
|
||||
}
|
||||
|
||||
Object tabpage_get_var(Tabpage tabpage, String name, Error *err)
|
||||
{
|
||||
abort();
|
||||
Object rv;
|
||||
tabpage_T *tab = find_tab(tabpage, err);
|
||||
|
||||
if (!tab) {
|
||||
return rv;
|
||||
}
|
||||
|
||||
return dict_get_value(tab->tp_vars, name, false, err);
|
||||
}
|
||||
|
||||
void tabpage_set_var(Tabpage tabpage, String name, Object value, Error *err)
|
||||
Object tabpage_set_var(Tabpage tabpage, String name, Object value, Error *err)
|
||||
{
|
||||
abort();
|
||||
Object rv;
|
||||
tabpage_T *tab = find_tab(tabpage, err);
|
||||
|
||||
if (!tab) {
|
||||
return rv;
|
||||
}
|
||||
|
||||
return dict_set_value(tab->tp_vars, name, value, err);
|
||||
}
|
||||
|
||||
Window tabpage_get_buffer(Tabpage tabpage, Error *err)
|
||||
|
@ -23,11 +23,12 @@ Object tabpage_get_var(Tabpage tabpage, String name, Error *err);
|
||||
|
||||
/// Sets a tabpage variable
|
||||
///
|
||||
/// @param tabpage andle
|
||||
/// @param tabpage handle
|
||||
/// @param name The variable name
|
||||
/// @param value The variable value
|
||||
/// @param[out] err Details of an error that may have occurred
|
||||
void tabpage_set_var(Tabpage tabpage, String name, Object value, Error *err);
|
||||
/// @return The tab page handle
|
||||
Object tabpage_set_var(Tabpage tabpage, String name, Object value, Error *err);
|
||||
|
||||
/// Gets the current window in a tab page
|
||||
///
|
||||
|
Loading…
Reference in New Issue
Block a user