20 #ifndef GNC_COMPONENT_MANAGER_H
21 #define GNC_COMPONENT_MANAGER_H
28 #define NO_COMPONENT (-1)
72 typedef void (*GNCComponentRefreshHandler) (GHashTable *changes,
84 typedef void (*GNCComponentCloseHandler) (gpointer user_data);
95 typedef gboolean (*GNCComponentFindHandler) (gpointer
find_data,
107 typedef gboolean (*GNCComponentHandler) (
const char *component_class,
115 void gnc_component_manager_init (
void);
120 void gnc_component_manager_shutdown (
void);
149 gint gnc_register_gui_component (
const char *component_class,
150 GNCComponentRefreshHandler refresh_handler,
151 GNCComponentCloseHandler close_handler,
160 void gnc_gui_component_set_session (gint component_id, gpointer session);
171 void gnc_gui_component_watch_entity (gint component_id,
184 void gnc_gui_component_watch_entity_type (gint component_id,
198 const EventInfo * gnc_gui_get_entity_events (GHashTable *changes,
206 void gnc_gui_component_clear_watches (gint component_id);
213 void gnc_unregister_gui_component (gint component_id);
223 void gnc_unregister_gui_component_by_data (
const char *component_class,
231 void gnc_suspend_gui_refresh (
void);
240 void gnc_resume_gui_refresh (
void);
249 void gnc_gui_refresh_all (
void);
254 gboolean gnc_gui_refresh_suspended (
void);
261 void gnc_close_gui_component (gint component_id);
272 void gnc_close_gui_component_by_data (
const char *component_class,
282 void gnc_close_gui_component_by_session (gpointer session);
299 GList * gnc_find_gui_components (
const char *component_class,
300 GNCComponentFindHandler find_handler,
317 gpointer gnc_find_first_gui_component (
const char *component_class,
318 GNCComponentFindHandler find_handler,
332 gint gnc_forall_gui_components (
const char *component_class,
333 GNCComponentHandler handler,
const gchar * QofIdTypeConst