6 #ifndef PROJECTLOADER_HOOKS_H 7 #define PROJECTLOADER_HOOKS_H 22 virtual void Call(
cbProject*, TiXmlElement*,
bool)
const = 0;
46 typedef void (T::*Func)(
cbProject*, TiXmlElement*, bool);
49 void Call(cbProject* project, TiXmlElement* elem,
bool isLoading)
const override 51 if (m_pObj && m_pFunc)
52 (m_pObj->*m_pFunc)(project, elem, isLoading);
84 #endif // PROJECTLOADER_HOOKS_H void Call(cbProject *project, TiXmlElement *elem, bool isLoading) const override
virtual ~HookFunctorBase()
DLLIMPORT void CallHooks(cbProject *project, TiXmlElement *elem, bool isLoading)
Call all registered hooks using the supplied parameters.
Provides static functions to add hooks to the project loading/saving procedure.
DLLIMPORT HookFunctorBase * UnregisterHook(int id, bool deleteHook=true)
Unregister a previously registered project loading/saving hook.
Represents a Code::Blocks project.
DLLIMPORT int RegisterHook(HookFunctorBase *functor)
Register a project loading/saving hook.
Functor class for use as a project loading/saving hook.
Abstract base hook functor interface.
HookFunctor(T *obj, Func func)
DLLIMPORT bool HasRegisteredHooks()
Are there any hooks registered?