#pragma once
#include "AftrConfig.h"
#ifdef AFTR_CONFIG_USE_IMGUI

#include <functional>

//Written by Scott Nykl

//This file simply declares aliases for the ImGui callbacks that
//are passed into the:
//WOImGui->subscribe_drawImGuiWidget(...)
//subscribe_onResizeWindow_Notify(...)

//This is also aliased again as the class member aliases within WOImGui... That is,
//both names are the exact same type. This forward declaration just saves one from
//having to include WOImGui.h in a light header file that only needs to refer to 
//the callback types.

namespace Aftr
{
   /// The callback invoked when this WOImGui is called to draw itself
   using WOImGui_Callback_OnDrawImGui = std::function< void() >;

   /// Callback invoked when the window is resized, the new width and height, in pixels, are passed in, respectively.
   using WOImGui_Callback_OnResizeWindow = std::function< void( int, int ) >;
}
#endif