G_MODULE_EXPORT void on_verse_per_line_activate(GtkCheckMenuItem * menuitem, gpointer user_data) { gchar *file = g_strdup_printf("%s/modops.conf", settings.gSwordDir); gchar *url = g_strdup_printf("sword://%s/%s", (is_dialog ? dialog->mod_name : settings.MainWindowModule), (is_dialog ? dialog->key : settings.currentverse)); save_conf_file_item(file, (is_dialog ? dialog->mod_name : settings.MainWindowModule), "style", (gtk_check_menu_item_get_active(menuitem) ? "verse" : "paragraph")); if (settings.havebible) { if (is_dialog) { /* show the change */ main_dialogs_url_handler(dialog, url, TRUE); } else { settings.versestyle = gtk_check_menu_item_get_active(menuitem); main_url_handler(url, TRUE); } } g_free(url); g_free(file); }
G_MODULE_EXPORT void on_popup_font_activate(GtkMenuItem *menuitem, gpointer user_data) { if (is_dialog) { gchar *url = g_strdup_printf("sword://%s/%s", dialog->mod_name, dialog->key); gui_set_module_font(dialog->mod_name); /* show the change */ main_dialogs_url_handler(dialog, url, TRUE); g_free(url); } else { gchar *key = _get_key(menu_mod_name); if (key) { gchar *url = g_strdup_printf("sword://%s/%s", menu_mod_name, key); gui_set_module_font(menu_mod_name); /* show the change */ main_url_handler(url, TRUE); g_free(url); g_free(key); } } }
static void sync_with_main(DIALOG_DATA *d) { gchar *url = g_strdup_printf("sword:///%s", settings.currentverse); main_dialogs_url_handler(d, url, TRUE); cur_d = d; g_free(url); }
static gboolean button_press_handler(GtkWidget *widget, GdkEventButton *event) { WkHtmlPriv *priv; priv = WK_HTML_GET_PRIVATE(WK_HTML(widget)); if (event->type == GDK_2BUTTON_PRESS && !x_uri) { db_click = TRUE; return FALSE; } db_click = FALSE; /* this is a left click */ if (event->button == 1) { /* go to the correct url otherwise webkit will do its own thing */ if (x_uri) { if (priv->is_dialog) { main_dialogs_url_handler(priv->dialog, x_uri, TRUE); } else { main_url_handler(x_uri, TRUE); } return TRUE; } return FALSE; } /* this is a right click */ if (event->button == 3) { /* display our own popup menu instead of webkit's one */ g_signal_emit(widget, signals[POPUPMENU_REQUESTED], 0, priv->dialog, FALSE); return TRUE; } if (event->button == 2) { /* ignore middle button */ return TRUE; } return FALSE; }
/* this is the link handler for when a link is clicked */ static void link_handler(GtkWidget *widget, #ifdef USE_WEBKIT2 WebKitHitTestResult *hit_test_result, guint modifiers, #else gchar *title, gchar *uri, #endif gpointer user_data) { #ifdef USE_WEBKIT2 const char *uri; uri = webkit_hit_test_result_get_link_uri(hit_test_result); #endif WkHtmlPriv *priv; priv = WK_HTML_GET_PRIVATE(WK_HTML(widget)); XI_message(("html_link_message: uri = %s", (uri ? uri : "-none-"))); if (x_uri) { g_free(x_uri); x_uri = NULL; } if (uri) { x_uri = g_strdup(uri); in_url = 1; } else in_url = 0; g_signal_emit(widget, signals[URI_SELECTED], 0, uri, FALSE); if (uri) { if (priv->is_dialog) main_dialogs_url_handler(priv->dialog, uri, FALSE); else main_url_handler(uri, FALSE); } }
static void _global_option_main_pane(GtkMenuItem *menuitem, const gchar *option) { gchar *key = _get_key(menu_mod_name); gchar *mod = (gchar *)(is_dialog ? dialog->mod_name : menu_mod_name); XI_message(("module option = %s", option)); if (key) { gchar *url = g_strdup_printf("sword://%s/%s", mod, key); main_save_module_options(mod, (gchar *)option, gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem))); if (is_dialog) { /* show the change */ main_dialogs_url_handler(dialog, url, TRUE); } else { /* show the change */ main_url_handler(url, TRUE); } g_free(url); g_free(key); } }