X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=nageru%2Ftheme.cpp;h=06d147f6686bb07739d7cbb5ee6bafa1ed1f66d5;hb=f81ae3be1aae619fe4ad022f55d95a4a83ace076;hp=19c90d4783c9a695f1175cb6268740973d3d730f;hpb=ed6cb5e4ae64a2f0fc1a08c3ea898a154fc1672d;p=nageru diff --git a/nageru/theme.cpp b/nageru/theme.cpp index 19c90d4..06d147f 100644 --- a/nageru/theme.cpp +++ b/nageru/theme.cpp @@ -1,11 +1,15 @@ #include "theme.h" +#include +#include #include #include #include +#include #include #include #include +#include #include #include #include @@ -28,11 +32,17 @@ #include #include #include -#include +#include #include +#include #include "audio_mixer.h" #include "defs.h" +#include "input_mapping.h" +#include "lua.h" +#include "lualib.h" +#include "shared/shared_defs.h" +#include "tweaked_inputs.h" #ifdef HAVE_CEF #include "cef_capture.h" #endif @@ -1448,6 +1458,15 @@ int Nageru_set_audio_bus_mute(lua_State *L) return 0; } +int Nageru_schedule_cut(lua_State *L) +{ + if (global_mixer == nullptr) { + luaL_error(L, "Cuts can not be scheduled before the theme is done initializing."); + } + global_mixer->schedule_cut(); + return 0; +} + int Nageru_get_audio_bus_eq_level_db(lua_State *L) { if (global_audio_mixer == nullptr) { @@ -1660,6 +1679,9 @@ void Theme::register_globals() { "get_audio_bus_mute", Nageru_get_audio_bus_mute }, { "set_audio_bus_mute", Nageru_set_audio_bus_mute }, + // Misc. + { "schedule_cut", Nageru_schedule_cut }, + { nullptr, nullptr } }; lua_pushlightuserdata(L, this);