| 185 |
|
|
| 186 |
static void destroy_handler(GtkWidget *button, GtkWidget *widget) {gtk_widget_destroy(widget);} |
static void destroy_handler(GtkWidget *button, GtkWidget *widget) {gtk_widget_destroy(widget);} |
| 187 |
|
|
| 188 |
|
static void toggled_handler(GtkToggleButton *togglebutton, gboolean *flag) { |
| 189 |
|
*flag = !*flag; |
| 190 |
|
} |
| 191 |
|
|
| 192 |
static void replace_current_buffer() { |
static void replace_current_buffer() { |
| 193 |
GtkWidget *dialog = gtk_dialog_new_with_buttons ("文字列の置換", GTK_WINDOW(Shiki_EDITOR_WINDOW), GTK_DIALOG_DESTROY_WITH_PARENT, NULL); |
GtkWidget *dialog = gtk_dialog_new_with_buttons ("文字列の置換", GTK_WINDOW(Shiki_EDITOR_WINDOW), GTK_DIALOG_DESTROY_WITH_PARENT, NULL); |
| 194 |
GtkWidget *table = gtk_table_new(7, 3, FALSE); |
GtkWidget *table = gtk_table_new(7, 3, FALSE); |
| 195 |
GtkWidget *find_label = gtk_label_new("検索 : "); |
GtkWidget *find_label = gtk_label_new("検索 : "); |
| 196 |
GtkWidget *find = gtk_entry_new(); |
GtkWidget *find = gtk_entry_new(); |
| 197 |
GtkWidget *rep_label = gtk_label_new("置換 : "); |
GtkWidget *rep_label = gtk_label_new("置換 : "); |
| 198 |
GtkWidget *replace = gtk_entry_new(); |
GtkWidget *replace = gtk_entry_new(); |
| 199 |
GtkWidget *check1 = gtk_check_button_new_with_label("大文字小文字を区別する"); |
GtkWidget *check1 = gtk_check_button_new_with_label("大文字小文字を区別する"); |
| 200 |
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check1), TRUE); |
| 201 |
GtkWidget *check2 = gtk_check_button_new_with_label("単語単位で検索する"); |
GtkWidget *check2 = gtk_check_button_new_with_label("単語単位で検索する"); |
| 202 |
GtkWidget *check3 = gtk_check_button_new_with_label("正規表現"); |
GtkWidget *check3 = gtk_check_button_new_with_label("正規表現"); |
| 203 |
GtkWidget *check4 = gtk_check_button_new_with_label("エスケープシーケンスを理解する"); |
GtkWidget *check4 = gtk_check_button_new_with_label("エスケープシーケンスを理解する"); |
| 205 |
GtkWidget *interactive = gtk_button_new_with_label ("確認あり"); |
GtkWidget *interactive = gtk_button_new_with_label ("確認あり"); |
| 206 |
GtkWidget *all = gtk_button_new_with_label ("全て置換"); |
GtkWidget *all = gtk_button_new_with_label ("全て置換"); |
| 207 |
GtkWidget *cancel = gtk_button_new_with_label ("キャンセル"); |
GtkWidget *cancel = gtk_button_new_with_label ("キャンセル"); |
| 208 |
|
gboolean f1 = TRUE, f2, f3, f4, f5; |
| 209 |
|
f2 = f3 = f4 = f5 = FALSE; |
| 210 |
|
g_signal_connect (check1, "toggled", G_CALLBACK (toggled_handler), &f1); |
| 211 |
|
g_signal_connect (check2, "toggled", G_CALLBACK (toggled_handler), &f2); |
| 212 |
|
g_signal_connect (check3, "toggled", G_CALLBACK (toggled_handler), &f3); |
| 213 |
|
g_signal_connect (check4, "toggled", G_CALLBACK (toggled_handler), &f4); |
| 214 |
|
g_signal_connect (check5, "toggled", G_CALLBACK (toggled_handler), &f5); |
| 215 |
|
|
| 216 |
g_signal_connect (G_OBJECT(dialog), "delete_event", G_CALLBACK(gtk_widget_destroy), NULL); |
g_signal_connect (G_OBJECT(dialog), "delete_event", G_CALLBACK(gtk_widget_destroy), NULL); |
| 217 |
g_signal_connect (G_OBJECT(cancel), "clicked", G_CALLBACK(destroy_handler), dialog); |
g_signal_connect (G_OBJECT(cancel), "clicked", G_CALLBACK(destroy_handler), dialog); |
| 246 |
GtkWidget *label = gtk_label_new("検索 : "); |
GtkWidget *label = gtk_label_new("検索 : "); |
| 247 |
GtkWidget *input = gtk_entry_new(); |
GtkWidget *input = gtk_entry_new(); |
| 248 |
GtkWidget *check1 = gtk_check_button_new_with_label("大文字小文字を区別する"); |
GtkWidget *check1 = gtk_check_button_new_with_label("大文字小文字を区別する"); |
| 249 |
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check1), TRUE); |
| 250 |
GtkWidget *check2 = gtk_check_button_new_with_label("単語単位で検索する"); |
GtkWidget *check2 = gtk_check_button_new_with_label("単語単位で検索する"); |
| 251 |
GtkWidget *check3 = gtk_check_button_new_with_label("正規表現"); |
GtkWidget *check3 = gtk_check_button_new_with_label("正規表現"); |
| 252 |
GtkWidget *check4 = gtk_check_button_new_with_label("エスケープシーケンスを理解する"); |
GtkWidget *check4 = gtk_check_button_new_with_label("エスケープシーケンスを理解する"); |
| 254 |
GtkWidget *prev = gtk_button_new_with_label ("上検索"); |
GtkWidget *prev = gtk_button_new_with_label ("上検索"); |
| 255 |
GtkWidget *next = gtk_button_new_with_label ("下検索"); |
GtkWidget *next = gtk_button_new_with_label ("下検索"); |
| 256 |
GtkWidget *cancel = gtk_button_new_with_label ("キャンセル"); |
GtkWidget *cancel = gtk_button_new_with_label ("キャンセル"); |
| 257 |
|
gboolean f1 = TRUE, f2, f3, f4, f5; |
| 258 |
|
f2 = f3 = f4 = f5 = FALSE; |
| 259 |
|
g_signal_connect (check1, "toggled", G_CALLBACK (toggled_handler), &f1); |
| 260 |
|
g_signal_connect (check2, "toggled", G_CALLBACK (toggled_handler), &f2); |
| 261 |
|
g_signal_connect (check3, "toggled", G_CALLBACK (toggled_handler), &f3); |
| 262 |
|
g_signal_connect (check4, "toggled", G_CALLBACK (toggled_handler), &f4); |
| 263 |
|
g_signal_connect (check5, "toggled", G_CALLBACK (toggled_handler), &f5); |
| 264 |
|
|
| 265 |
g_signal_connect (G_OBJECT(dialog), "delete_event", G_CALLBACK(gtk_widget_destroy), NULL); |
g_signal_connect (G_OBJECT(dialog), "delete_event", G_CALLBACK(gtk_widget_destroy), NULL); |
| 266 |
g_signal_connect (G_OBJECT(cancel), "clicked", G_CALLBACK(destroy_handler), dialog); |
g_signal_connect (G_OBJECT(cancel), "clicked", G_CALLBACK(destroy_handler), dialog); |