obs-scripting: Add obs_sceneitem_group_enum_items function call
Adds function call to enumerate over items contained in a source group.
This commit is contained in:
parent
277dafab98
commit
d9f89be35a
2 changed files with 31 additions and 0 deletions
12
deps/obs-scripting/obs-scripting-lua.c
vendored
12
deps/obs-scripting/obs-scripting-lua.c
vendored
|
|
@ -644,6 +644,17 @@ static int scene_enum_items(lua_State *script)
|
|||
return 1;
|
||||
}
|
||||
|
||||
static int sceneitem_group_enum_items(lua_State *script)
|
||||
{
|
||||
obs_sceneitem_t *sceneitem;
|
||||
if (!ls_get_libobs_obj(obs_sceneitem_t, 1, &sceneitem))
|
||||
return 0;
|
||||
|
||||
lua_newtable(script);
|
||||
obs_sceneitem_group_enum_items(sceneitem, enum_items_proc, script);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
||||
static void defer_hotkey_unregister(void *p_cb)
|
||||
|
|
@ -1014,6 +1025,7 @@ static void add_hook_functions(lua_State *script)
|
|||
add_func("obs_enum_sources", enum_sources);
|
||||
add_func("obs_source_enum_filters", source_enum_filters);
|
||||
add_func("obs_scene_enum_items", scene_enum_items);
|
||||
add_func("obs_sceneitem_group_enum_items", sceneitem_group_enum_items);
|
||||
add_func("source_list_release", source_list_release);
|
||||
add_func("sceneitem_list_release", sceneitem_list_release);
|
||||
add_func("calldata_source", calldata_source);
|
||||
|
|
|
|||
19
deps/obs-scripting/obs-scripting-python.c
vendored
19
deps/obs-scripting/obs-scripting-python.c
vendored
|
|
@ -1108,6 +1108,23 @@ static PyObject *scene_enum_items(PyObject *self, PyObject *args)
|
|||
return list;
|
||||
}
|
||||
|
||||
static PyObject *sceneitem_group_enum_items(PyObject *self, PyObject *args)
|
||||
{
|
||||
PyObject *py_sceneitem;
|
||||
obs_sceneitem_t *sceneitem;
|
||||
|
||||
UNUSED_PARAMETER(self);
|
||||
|
||||
if (!parse_args(args, "O", &py_sceneitem))
|
||||
return python_none();
|
||||
if (!py_to_libobs(obs_sceneitem_t, py_sceneitem, &sceneitem))
|
||||
return python_none();
|
||||
|
||||
PyObject *list = PyList_New(0);
|
||||
obs_sceneitem_group_enum_items(sceneitem, enum_items_proc, list);
|
||||
return list;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
||||
static PyObject *source_list_release(PyObject *self, PyObject *args)
|
||||
|
|
@ -1235,6 +1252,8 @@ static void add_hook_functions(PyObject *module)
|
|||
DEF_FUNC("sceneitem_list_release", sceneitem_list_release),
|
||||
DEF_FUNC("obs_enum_sources", enum_sources),
|
||||
DEF_FUNC("obs_scene_enum_items", scene_enum_items),
|
||||
DEF_FUNC("obs_sceneitem_group_enum_items",
|
||||
sceneitem_group_enum_items),
|
||||
DEF_FUNC("obs_remove_tick_callback",
|
||||
obs_python_remove_tick_callback),
|
||||
DEF_FUNC("obs_add_tick_callback", obs_python_add_tick_callback),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue