static void gnc_plugin_page_invoice_destroy_widget (GncPluginPage *plugin_page) { GncPluginPageInvoice *page; GncPluginPageInvoicePrivate *priv; ENTER("page %p", plugin_page); page = GNC_PLUGIN_PAGE_INVOICE (plugin_page); priv = GNC_PLUGIN_PAGE_INVOICE_GET_PRIVATE(page); gnc_gconf_general_remove_cb(KEY_SUMMARYBAR_POSITION, gnc_plugin_page_invoice_summarybar_position_changed, page); if (priv->widget == NULL) { LEAVE(""); return; } if (priv->component_manager_id) { gnc_unregister_gui_component(priv->component_manager_id); priv->component_manager_id = 0; } gtk_widget_hide(priv->widget); gnc_invoice_window_destroy_cb(priv->widget, priv->iw); priv->widget = NULL; LEAVE(""); }
static void gnc_plugin_page_invoice_destroy_widget (GncPluginPage *plugin_page) { GncPluginPageInvoice *page; GncPluginPageInvoicePrivate *priv; ENTER("page %p", plugin_page); page = GNC_PLUGIN_PAGE_INVOICE (plugin_page); priv = GNC_PLUGIN_PAGE_INVOICE_GET_PRIVATE(page); gnc_prefs_remove_cb_by_func (GNC_PREFS_GROUP_GENERAL, GNC_PREF_SUMMARYBAR_POSITION_TOP, gnc_plugin_page_invoice_summarybar_position_changed, page); gnc_prefs_remove_cb_by_func (GNC_PREFS_GROUP_GENERAL, GNC_PREF_SUMMARYBAR_POSITION_BOTTOM, gnc_plugin_page_invoice_summarybar_position_changed, page); // Remove the page focus idle function if present g_idle_remove_by_data (priv->iw); if (priv->widget == NULL) { LEAVE(""); return; } if (priv->component_manager_id) { gnc_unregister_gui_component(priv->component_manager_id); priv->component_manager_id = 0; } gtk_widget_hide(priv->widget); gnc_invoice_window_destroy_cb(priv->widget, priv->iw); priv->widget = NULL; LEAVE(""); }