/* $Id: e2_hook.h 874 2008-05-07 14:47:27Z tpgww $

Copyright (C) 2004-2008 tooar <tooar@gmx.net>

This file is part of emelfm2.
emelfm2 is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.

emelfm2 is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with emelFM2; see the file GPL. If not, contact the Free Software
Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/

#ifndef __E2_HOOK_H__
#define __E2_HOOK_H__

#include "e2_utils.h"

void e2_hook_unattach_cb (E2_Duo *duo);

GHook *e2_hook_register (GHookList *hook_list, gpointer func, gpointer data);
gboolean e2_hook_unregister (GHookList *hook_list, gpointer func, gpointer data,
	gboolean use_data);
#define e2_hook_unregister_simple(hook_list, func) \
	e2_hook_unregister (hook_list, func, NULL, FALSE)
void e2_hook_list_run (GHookList *hook_list, gpointer data);

#endif //ndef __E2_HOOK_H__
