void Apply();
};
+/** Represents an action which is executable by an action list */
+class CoreExport ActionBase : public classbase
+{
+ public:
+ /** Executes this action. */
+ virtual void Call() = 0;
+};
+
class CoreExport ActionList
{
- std::vector<HandlerBase0<void>*> list;
+ std::vector<ActionBase*> list;
public:
/** Adds an item to the list
*/
- void AddAction(HandlerBase0<void>* item) { list.push_back(item); }
+ void AddAction(ActionBase* item) { list.push_back(item); }
/** Runs the items
*/