2
2
* Xiphos Bible Study Tool
5
* Copyright (C) 2000-2010 Xiphos Developer Team
5
* Copyright (C) 2000-2011 Xiphos Developer Team
7
7
* This program is free software; you can redistribute it and/or modify
8
8
* it under the terms of the GNU General Public License as published by
30
30
#include "gui/find_dialog.h"
31
31
#include "main/settings.h"
32
32
#include "main/sword.h"
33
#ifdef USE_GTKMOZEMBED
35
#include "geckowin/gecko-html.h"
37
#include "gecko/gecko-html.h"
33
#include "../xiphos_html/xiphos_html.h"
41
35
typedef struct _find_dialog FIND_DIALOG;
101
95
gchar *text = (gchar*)gtk_entry_get_text(GTK_ENTRY(d->entry));
102
96
sprintf(settings.findText, "%s", text);
104
#ifndef USE_GTKMOZEMBED
105
gtk_html_engine_search(GTK_HTML(d->htmlwidget), text,
106
GTK_TOGGLE_BUTTON(d->case_sensitive)->active,
107
GTK_TOGGLE_BUTTON(d->backward)->active == 0,
98
#ifndef USE_XIPHOS_HTML
99
gboolean cs_active, b_active;
100
g_object_get(GTK_TOGGLE_BUTTON(d->case_sensitive),
101
"active", &cs_active,
103
g_object_get(GTK_TOGGLE_BUTTON(d->backward),
106
gtk_html_engine_search(GTK_HTML(d->htmlwidget), text, cs_active,
107
b_active == 0, d->regular);
110
gecko_html_find((void *)d->htmlwidget, text);
111
#endif /* !USE_GTKMOZEMBED */
109
XIPHOS_HTML_FIND((void *)d->htmlwidget, text);
110
#endif /* !USE_XIPHOS_HTML */
131
130
static void next_clicked(GtkButton * button, FIND_DIALOG * d)
133
#ifndef USE_GTKMOZEMBED
132
#ifndef USE_XIPHOS_HTML
134
133
gtk_html_engine_search_next(GTK_HTML(d->htmlwidget));
136
gecko_html_find_again((void *)d->htmlwidget,
137
GTK_TOGGLE_BUTTON(d->backward)->active == 0);
138
#endif /* !USE_GTKMOZEMBED */
135
XIPHOS_HTML_FIND_AGAIN((void *)d->htmlwidget, 1);
136
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(d->backward), 0);
137
#endif /* !USE_XIPHOS_HTML */
202
201
g_object_set_data(G_OBJECT(dialog->dialog),
203
202
"dialog->dialog", dialog->dialog);
204
203
gtk_window_set_title(GTK_WINDOW(dialog->dialog), _("Find"));
205
GTK_WINDOW(dialog->dialog)->type = GTK_WINDOW_TOPLEVEL;
204
//GTK_WINDOW(dialog->dialog)->type = GTK_WINDOW_TOPLEVEL;
206
205
/*gtk_window_set_policy(GTK_WINDOW(dialog->dialog), TRUE, TRUE,
208
207
gtk_container_set_border_width (GTK_CONTAINER (dialog->dialog), 6);
209
208
gtk_window_set_resizable (GTK_WINDOW (dialog->dialog), FALSE);
210
210
gtk_dialog_set_has_separator (GTK_DIALOG (dialog->dialog), FALSE);
212
dialog_vbox29 = GTK_DIALOG(dialog->dialog)->vbox;
212
dialog_vbox29 = gtk_dialog_get_content_area (GTK_DIALOG(dialog->dialog));
213
213
g_object_set_data(G_OBJECT(dialog->dialog), "dialog_vbox29",
215
215
gtk_widget_show(dialog_vbox29);
233
233
gtk_widget_show(hbox66);
234
234
gtk_box_pack_start(GTK_BOX(vbox45), hbox66, TRUE, TRUE, 0);
236
#ifndef USE_GTKMOZEMBED
236
#ifndef USE_XIPHOS_HTML
237
237
dialog->case_sensitive =
238
238
gtk_check_button_new_with_label(_("Match case"));
239
239
gtk_widget_show(dialog->case_sensitive);
240
240
gtk_box_pack_start(GTK_BOX(hbox66), dialog->case_sensitive,
241
241
FALSE, FALSE, 0);
242
#endif /* !USE_GTKMOZEMBED */
242
#endif /* !USE_XIPHOS_HTML */
244
244
dialog->backward =
245
245
gtk_check_button_new_with_label(_("Search backwards"));
249
249
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON
250
250
(dialog->backward), FALSE);
252
#ifndef USE_GTKMOZEMBED
252
#ifndef USE_XIPHOS_HTML
254
254
gtk_check_button_new_with_label(_("Regular expression"));
255
255
gtk_widget_show(dialog->regex);
256
256
gtk_box_pack_start(GTK_BOX(hbox66), dialog->regex, FALSE, FALSE,
258
#endif /* !USE_GTKMOZEMBED */
258
#endif /* !USE_XIPHOS_HTML */
260
dialog_action_area29 = GTK_DIALOG(dialog->dialog)->action_area;
260
dialog_action_area29 = gtk_dialog_get_action_area (GTK_DIALOG(dialog->dialog));
261
261
g_object_set_data(G_OBJECT(dialog->dialog),
262
262
"dialog_action_area29",
263
263
dialog_action_area29);
301
301
gtk_widget_show(dialog->close);
302
302
gtk_container_add(GTK_CONTAINER(hbuttonbox8), dialog->close);
303
303
//GTK_WIDGET_SET_FLAGS(dialog->close, GTK_CAN_DEFAULT);
304
GTK_WIDGET_SET_FLAGS(dialog->find, GTK_CAN_DEFAULT);
309
g_signal_connect(GTK_OBJECT(dialog->dialog), "destroy",
304
gtk_widget_set_can_default (dialog->find, 1);
309
g_signal_connect(G_OBJECT(dialog->dialog), "destroy",
310
310
G_CALLBACK(dialog_destroy), dialog);
311
g_signal_connect(GTK_OBJECT(dialog->find), "clicked",
311
g_signal_connect(G_OBJECT(dialog->find), "clicked",
312
312
G_CALLBACK(find_clicked), dialog);
313
g_signal_connect(GTK_OBJECT(dialog->next), "clicked",
313
g_signal_connect(G_OBJECT(dialog->next), "clicked",
314
314
G_CALLBACK(next_clicked), dialog);
315
g_signal_connect(GTK_OBJECT(dialog->close), "clicked",
315
g_signal_connect(G_OBJECT(dialog->close), "clicked",
316
316
G_CALLBACK(close_clicked), dialog);
339
339
//gtk_window_set_title(GTK_WINDOW(dialog->dialog), title);
340
340
dialog->htmlwidget = htmlwidget;
341
341
gtk_widget_show(GTK_WIDGET(dialog->dialog));
342
gdk_window_raise(GTK_WIDGET(dialog->dialog)->window);
342
gdk_window_raise(gtk_widget_get_window (GTK_WIDGET(dialog->dialog)));
344
344
create_find_dialog(htmlwidget);
345
345
//gtk_window_set_title(GTK_WINDOW(dialog->dialog), title);