#include "DoLaterHandler.h" DoLaterHandler::DoLaterHandler() { action = []() {}; } DoLaterHandler::~DoLaterHandler() { action(); } void DoLaterHandler::addTodo(std::function newAction) { std::function oldAction = action; this->action = [oldAction, newAction]() { oldAction(); newAction(); }; } void DoLaterHandler::execute() { action(); action = []() {}; }