@ -13,6 +13,7 @@
# include "df/viewscreen_titlest.h"
# include "df/viewscreen_titlest.h"
# include "df/viewscreen_update_regionst.h"
# include "df/viewscreen_update_regionst.h"
# include "df/viewscreen_worldst.h"
# include "df/viewscreen_worldst.h"
# include "df/world.h"
# include "Debug.h"
# include "Debug.h"
# include "LuaTools.h"
# include "LuaTools.h"
@ -27,6 +28,8 @@ using namespace DFHack;
DFHACK_PLUGIN ( " overlay " ) ;
DFHACK_PLUGIN ( " overlay " ) ;
DFHACK_PLUGIN_IS_ENABLED ( is_enabled ) ;
DFHACK_PLUGIN_IS_ENABLED ( is_enabled ) ;
REQUIRE_GLOBAL ( world ) ;
namespace DFHack {
namespace DFHack {
DBG_DECLARE ( overlay , control , DebugCategory : : LINFO ) ;
DBG_DECLARE ( overlay , control , DebugCategory : : LINFO ) ;
DBG_DECLARE ( overlay , event , DebugCategory : : LINFO ) ;
DBG_DECLARE ( overlay , event , DebugCategory : : LINFO ) ;
@ -67,6 +70,8 @@ struct viewscreen_overlay : T {
}
}
DEFINE_VMETHOD_INTERPOSE ( void , feed , ( std : : set < df : : interface_key > * input ) ) {
DEFINE_VMETHOD_INTERPOSE ( void , feed , ( std : : set < df : : interface_key > * input ) ) {
bool input_is_handled = false ;
bool input_is_handled = false ;
// don't send input to the overlays if there is a modal dialog up
if ( ! world - > status . popups . size ( ) )
call_overlay_lua ( NULL , " feed_viewscreen_widgets " , 2 , 1 ,
call_overlay_lua ( NULL , " feed_viewscreen_widgets " , 2 , 1 ,
[ & ] ( lua_State * L ) {
[ & ] ( lua_State * L ) {
Lua : : Push ( L , T : : _identity . getName ( ) ) ;
Lua : : Push ( L , T : : _identity . getName ( ) ) ;