obs-scripting: add transition duration functions
This commit is contained in:
parent
96449877ef
commit
a78558b46a
18
deps/obs-scripting/obs-scripting-lua-frontend.c
vendored
18
deps/obs-scripting/obs-scripting-lua-frontend.c
vendored
@ -113,6 +113,22 @@ static int set_current_transition(lua_State *script)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int get_transition_duration(lua_State *script)
|
||||
{
|
||||
int duration = obs_frontend_get_transition_duration();
|
||||
lua_pushinteger(script, duration);
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int set_transition_duration(lua_State *script)
|
||||
{
|
||||
if (lua_isnumber(script, 1)) {
|
||||
int duration = (int)lua_tointeger(script, 1);
|
||||
obs_frontend_set_transition_duration(duration);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int get_scene_collections(lua_State *script)
|
||||
{
|
||||
char **names = obs_frontend_get_scene_collections();
|
||||
@ -299,6 +315,8 @@ void add_lua_frontend_funcs(lua_State *script)
|
||||
add_func(get_transitions);
|
||||
add_func(get_current_transition);
|
||||
add_func(set_current_transition);
|
||||
add_func(get_transition_duration);
|
||||
add_func(set_transition_duration);
|
||||
add_func(get_scene_collections);
|
||||
add_func(get_current_scene_collection);
|
||||
add_func(set_current_scene_collection);
|
||||
|
@ -161,6 +161,26 @@ static PyObject *set_current_transition(PyObject *self, PyObject *args)
|
||||
return python_none();
|
||||
}
|
||||
|
||||
static PyObject *get_transition_duration(PyObject *self, PyObject *args)
|
||||
{
|
||||
int duration = obs_frontend_get_transition_duration();
|
||||
PyObject *ret = PyLong_FromLong(duration);
|
||||
UNUSED_PARAMETER(self);
|
||||
UNUSED_PARAMETER(args);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static PyObject *set_transition_duration(PyObject *self, PyObject *args)
|
||||
{
|
||||
int duration;
|
||||
if (!parse_args(args, "i", &duration))
|
||||
return python_none();
|
||||
|
||||
obs_frontend_set_transition_duration(duration);
|
||||
UNUSED_PARAMETER(self);
|
||||
return python_none();
|
||||
}
|
||||
|
||||
static PyObject *get_scene_collections(PyObject *self, PyObject *args)
|
||||
{
|
||||
char **names = obs_frontend_get_scene_collections();
|
||||
@ -415,6 +435,8 @@ void add_python_frontend_funcs(PyObject *module)
|
||||
DEF_FUNC(get_transitions),
|
||||
DEF_FUNC(get_current_transition),
|
||||
DEF_FUNC(set_current_transition),
|
||||
DEF_FUNC(set_transition_duration),
|
||||
DEF_FUNC(get_transition_duration),
|
||||
DEF_FUNC(get_scene_collections),
|
||||
DEF_FUNC(get_current_scene_collection),
|
||||
DEF_FUNC(set_current_scene_collection),
|
||||
|
@ -81,6 +81,7 @@ bool import_python(const char *python_path)
|
||||
IMPORT_FUNC(PyUnicode_FromFormat);
|
||||
IMPORT_FUNC(PyUnicode_Concat);
|
||||
IMPORT_FUNC(PyLong_FromVoidPtr);
|
||||
IMPORT_FUNC(PyLong_FromLong);
|
||||
IMPORT_FUNC(PyBool_FromLong);
|
||||
IMPORT_FUNC(PyGILState_Ensure);
|
||||
IMPORT_FUNC(PyGILState_GetThisThreadState);
|
||||
|
@ -69,6 +69,7 @@ PY_EXTERN PyObject *(*Import_PyObject_Init)(PyObject *, PyTypeObject *);
|
||||
PY_EXTERN PyObject *(*Import_PyUnicode_FromFormat)(const char *format, ...);
|
||||
PY_EXTERN PyObject *(*Import_PyUnicode_Concat)(PyObject *left, PyObject *right);
|
||||
PY_EXTERN PyObject *(*Import_PyLong_FromVoidPtr)(void *);
|
||||
PY_EXTERN PyObject *(*Import_PyLong_FromLong)(long);
|
||||
PY_EXTERN PyObject *(*Import_PyBool_FromLong)(long);
|
||||
PY_EXTERN PyGILState_STATE (*Import_PyGILState_Ensure)(void);
|
||||
PY_EXTERN PyThreadState *(*Import_PyGILState_GetThisThreadState)(void);
|
||||
@ -169,6 +170,7 @@ extern bool import_python(const char *python_path);
|
||||
#define PyUnicode_FromFormat Import_PyUnicode_FromFormat
|
||||
#define PyUnicode_Concat Import_PyUnicode_Concat
|
||||
#define PyLong_FromVoidPtr Import_PyLong_FromVoidPtr
|
||||
#define PyLong_FromLong Import_PyLong_FromLong
|
||||
#define PyBool_FromLong Import_PyBool_FromLong
|
||||
#define PyGILState_Ensure Import_PyGILState_Ensure
|
||||
#define PyGILState_GetThisThreadState Import_PyGILState_GetThisThreadState
|
||||
|
Loading…
x
Reference in New Issue
Block a user