comparison interface.c @ 14:da18f2d4f92f

removed all buttons and stuff from the window; cleaned up
author meillo@marmaro.de
date Thu, 04 Mar 2010 18:31:28 +0100
parents 13bc21684b8a
children 7dbf3879939a
comparison
equal deleted inserted replaced
13:13bc21684b8a 14:da18f2d4f92f
22 GtkWidget* 22 GtkWidget*
23 create_cropper_window(void) 23 create_cropper_window(void)
24 { 24 {
25 GtkWidget *cropper_window; 25 GtkWidget *cropper_window;
26 GtkWidget *dialog_vbox1; 26 GtkWidget *dialog_vbox1;
27 GtkWidget *hbox1; 27 GtkWidget *status;
28 GtkWidget *vbox1;
29 GtkWidget *vbox2;
30 GtkWidget *label1; 28 GtkWidget *label1;
31 GtkWidget *hbox2;
32 GtkWidget *label2; 29 GtkWidget *label2;
33 GtkWidget *table2;
34 GtkWidget *label3;
35 GtkWidget *label5;
36 GtkWidget *label4;
37 GtkWidget *label6;
38 GtkWidget *hbox5;
39 GtkObject *crop_x_spinbutton_adj;
40 GtkWidget *crop_x_spinbutton;
41 GtkWidget *hbox6;
42 GtkObject *crop_y_spinbutton_adj;
43 GtkWidget *crop_y_spinbutton;
44 GtkWidget *hbox7;
45 GtkObject *crop_width_spinbutton_adj;
46 GtkWidget *crop_width_spinbutton;
47 GtkWidget *hbox8;
48 GtkObject *crop_height_spinbutton_adj;
49 GtkWidget *crop_height_spinbutton;
50 GtkWidget *vbox4;
51 GtkWidget *label7;
52 GtkWidget *hbox3;
53 GtkWidget *label8;
54 GtkWidget *table3;
55 GtkWidget *hbox10;
56 GtkWidget *custom_ratio_box;
57 GtkObject *ratio_w_spinbutton_adj;
58 GtkWidget *ratio_w_spinbutton;
59 GtkWidget *ratio_swap_button;
60 GtkWidget *eventbox1;
61 GtkWidget *ratio_swap_image;
62 GtkObject *ratio_h_spinbutton_adj;
63 GtkWidget *ratio_h_spinbutton;
64 GtkWidget *ratio_optionmenu;
65 GtkWidget *menu1;
66 GtkWidget *ratio_none;
67 GtkWidget *ratio_square;
68 GtkWidget *ratio_4x3;
69 GtkWidget *ratio_3x2;
70 GtkWidget *ratio_custom;
71 GtkWidget *vbox5;
72 GtkWidget *frame1;
73 GtkWidget *vbox7;
74 GtkWidget *nav_container;
75 GtkWidget *hbox16;
76 GtkWidget *hbox17;
77 GtkWidget *crop_zoom_in_button;
78 GtkWidget *image2;
79 GtkWidget *crop_zoom_out_button;
80 GtkWidget *image4;
81 GtkWidget *crop_zoom_100_button;
82 GtkWidget *image3;
83 GtkWidget *crop_zoom_fit_button;
84 GtkWidget *image1;
85 GtkWidget *dialog_action_area1;
86 GtkWidget *crop_okbutton;
87 GtkWidget *alignment1;
88 GtkWidget *hbox11;
89 GtkWidget *crop_image;
90 GtkWidget *label12;
91 30
92 31
93 cropper_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); 32 cropper_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
94 gtk_widget_set_name(cropper_window, "cropper_window"); 33 gtk_widget_set_name(cropper_window, "cropper_window");
95 gtk_container_set_border_width(GTK_CONTAINER(cropper_window), 6); 34 gtk_container_set_border_width(GTK_CONTAINER(cropper_window), 6);
96 gtk_window_set_title(GTK_WINDOW(cropper_window), "Cropper"); 35 gtk_window_set_title(GTK_WINDOW(cropper_window), "cropper-0.2");
97 36
98 dialog_vbox1 = gtk_vbox_new(FALSE, 6); 37 dialog_vbox1 = gtk_vbox_new(FALSE, 6);
99 gtk_widget_set_name(dialog_vbox1, "dialog_vbox1"); 38 gtk_widget_set_name(dialog_vbox1, "dialog_vbox1");
100 gtk_widget_show(dialog_vbox1); 39 gtk_widget_show(dialog_vbox1);
101 gtk_container_add(GTK_CONTAINER(cropper_window), dialog_vbox1); 40 gtk_container_add(GTK_CONTAINER(cropper_window), dialog_vbox1);
102 41
103 hbox1 = gtk_hbox_new(FALSE, 12); 42
104 gtk_widget_set_name(hbox1, "hbox1"); 43 status = gtk_hbox_new(FALSE, 0);
105 gtk_widget_show(hbox1); 44 gtk_widget_set_name(status, "status");
106 gtk_box_pack_start(GTK_BOX(dialog_vbox1), hbox1, TRUE, TRUE, 0); 45 gtk_widget_show(status);
46 gtk_box_pack_end(GTK_BOX(dialog_vbox1), status, FALSE, FALSE, 0);
47
48 label1 = gtk_label_new("zoom:");
49 gtk_widget_set_name(label1, "label1");
50 gtk_widget_show(label1);
51 gtk_box_pack_start(GTK_BOX(status), label1, FALSE, FALSE, 0);
52
53 label2 = gtk_label_new("1.0");
54 gtk_widget_set_name(label2, "label2");
55 gtk_widget_show(label2);
56 gtk_box_pack_start(GTK_BOX(status), label2, FALSE, FALSE, 0);
57
58 /* image_area */
59 image_buffer = gdk_pixbuf_new_from_file(image_filename, NULL);
60 image_area = gtk_image_new_from_pixbuf(image_buffer);
61
62 gtk_widget_set_name(image_area, "image_area");
63 gtk_widget_show(image_area);
64 gtk_box_pack_start(GTK_BOX(dialog_vbox1), image_area, TRUE, TRUE, 0);
65
66
67
68
69
70 g_signal_connect(G_OBJECT(cropper_window), "show",
71 G_CALLBACK(on_cropper_window_create), NULL);
72
73 g_signal_connect(G_OBJECT(cropper_window), "destroy",
74 G_CALLBACK(on_cropper_window_destroy), NULL);
75
76 g_signal_connect(cropper_window, "key-press-event",
77 G_CALLBACK(on_key_press), NULL);
78
79
80 /* Store pointers to all widgets, for use by lookup_widget(). */
81
82 GLADE_HOOKUP_OBJECT_NO_REF(cropper_window, cropper_window, "cropper_window");
83 GLADE_HOOKUP_OBJECT(cropper_window, dialog_vbox1, "dialog_vbox1");
84
85 GLADE_HOOKUP_OBJECT(cropper_window, label1, "label1");
86 GLADE_HOOKUP_OBJECT(cropper_window, label2, "label2");
87 GLADE_HOOKUP_OBJECT(cropper_window, status, "status");
88 GLADE_HOOKUP_OBJECT(cropper_window, image_area, "image_area");
89 GLADE_HOOKUP_OBJECT(cropper_window,(GtkWidget*) image_buffer, "image_buffer");
90
91
92 return cropper_window;
93 }
94
95
96
97
98
99
100
101
102
103 /*
107 gtk_container_set_border_width(GTK_CONTAINER(hbox1), 5); 104 gtk_container_set_border_width(GTK_CONTAINER(hbox1), 5);
108 105
109 vbox1 = gtk_vbox_new(FALSE, 12);
110 gtk_widget_set_name(vbox1, "vbox1");
111 gtk_widget_show(vbox1);
112 gtk_box_pack_start(GTK_BOX(hbox1), vbox1, FALSE, TRUE, 0);
113
114 vbox2 = gtk_vbox_new(FALSE, 6);
115 gtk_widget_set_name(vbox2, "vbox2");
116 gtk_widget_show(vbox2);
117 gtk_box_pack_start(GTK_BOX(vbox1), vbox2, FALSE, TRUE, 0);
118
119 label1 = gtk_label_new("<b>Selection</b>"); 106 label1 = gtk_label_new("<b>Selection</b>");
120 gtk_widget_set_name(label1, "label1");
121 gtk_widget_show(label1);
122 gtk_box_pack_start(GTK_BOX(vbox2), label1, FALSE, FALSE, 0);
123 gtk_label_set_use_markup(GTK_LABEL(label1), TRUE); 107 gtk_label_set_use_markup(GTK_LABEL(label1), TRUE);
124 gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5); 108 gtk_misc_set_alignment(GTK_MISC(label1), 0, 0.5);
125 109
126 hbox2 = gtk_hbox_new(FALSE, 0);
127 gtk_widget_set_name(hbox2, "hbox2");
128 gtk_widget_show(hbox2);
129 gtk_box_pack_start(GTK_BOX(vbox2), hbox2, FALSE, TRUE, 0);
130
131 label2 = gtk_label_new(" ");
132 gtk_widget_set_name(label2, "label2");
133 gtk_widget_show(label2);
134 gtk_box_pack_start(GTK_BOX(hbox2), label2, FALSE, FALSE, 0);
135
136 table2 = gtk_table_new(4, 2, FALSE);
137 gtk_widget_set_name(table2, "table2");
138 gtk_widget_show(table2);
139 gtk_box_pack_start(GTK_BOX(hbox2), table2, TRUE, TRUE, 0);
140 gtk_table_set_row_spacings(GTK_TABLE(table2), 6); 110 gtk_table_set_row_spacings(GTK_TABLE(table2), 6);
141 gtk_table_set_col_spacings(GTK_TABLE(table2), 6); 111 gtk_table_set_col_spacings(GTK_TABLE(table2), 6);
142 112
143 label3 = gtk_label_new_with_mnemonic("_X:");
144 gtk_widget_set_name(label3, "label3");
145 gtk_widget_show(label3);
146 gtk_table_attach(GTK_TABLE(table2), label3, 0, 1, 0, 1,(GtkAttachOptions)(GTK_FILL), 113 gtk_table_attach(GTK_TABLE(table2), label3, 0, 1, 0, 1,(GtkAttachOptions)(GTK_FILL),
147 (GtkAttachOptions)(0), 0, 0); 114 (GtkAttachOptions)(0), 0, 0);
148 gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5); 115 gtk_misc_set_alignment(GTK_MISC(label3), 0, 0.5);
149
150 label5 = gtk_label_new_with_mnemonic("_Y:");
151 gtk_widget_set_name(label5, "label5");
152 gtk_widget_show(label5);
153 gtk_table_attach(GTK_TABLE(table2), label5, 0, 1, 1, 2,
154 (GtkAttachOptions)(GTK_FILL),
155 (GtkAttachOptions)(0), 0, 0);
156 gtk_misc_set_alignment(GTK_MISC(label5), 0, 0.5);
157
158 label4 = gtk_label_new_with_mnemonic("_Width:");
159 gtk_widget_set_name(label4, "label4");
160 gtk_widget_show(label4);
161 gtk_table_attach(GTK_TABLE(table2), label4, 0, 1, 2, 3,
162 (GtkAttachOptions)(GTK_FILL),
163 (GtkAttachOptions)(0), 0, 0);
164 gtk_misc_set_alignment(GTK_MISC(label4), 0, 0.5);
165
166 label6 = gtk_label_new_with_mnemonic("_Height:");
167 gtk_widget_set_name(label6, "label6");
168 gtk_widget_show(label6);
169 gtk_table_attach(GTK_TABLE(table2), label6, 0, 1, 3, 4,
170 (GtkAttachOptions)(GTK_FILL),
171 (GtkAttachOptions)(0), 0, 0);
172 gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5);
173
174 hbox5 = gtk_hbox_new(FALSE, 0);
175 gtk_widget_set_name(hbox5, "hbox5");
176 gtk_widget_show(hbox5);
177 gtk_table_attach(GTK_TABLE(table2), hbox5, 1, 2, 0, 1,
178 (GtkAttachOptions)(GTK_FILL),
179 (GtkAttachOptions)(GTK_FILL), 0, 0);
180
181 crop_x_spinbutton_adj = gtk_adjustment_new(1, 0, 300, 1, 10, 1);
182 crop_x_spinbutton = gtk_spin_button_new(GTK_ADJUSTMENT(crop_x_spinbutton_adj), 1, 0);
183 gtk_widget_set_name(crop_x_spinbutton, "crop_x_spinbutton");
184 gtk_widget_show(crop_x_spinbutton);
185 gtk_box_pack_start(GTK_BOX(hbox5), crop_x_spinbutton, FALSE, TRUE, 0);
186
187 hbox6 = gtk_hbox_new(FALSE, 0);
188 gtk_widget_set_name(hbox6, "hbox6");
189 gtk_widget_show(hbox6);
190 gtk_table_attach(GTK_TABLE(table2), hbox6, 1, 2, 1, 2,
191 (GtkAttachOptions)(GTK_FILL),
192 (GtkAttachOptions)(GTK_FILL), 0, 0);
193
194 crop_y_spinbutton_adj = gtk_adjustment_new(1, 0, 300, 1, 10, 1);
195 crop_y_spinbutton = gtk_spin_button_new(GTK_ADJUSTMENT(crop_y_spinbutton_adj), 1, 0);
196 gtk_widget_set_name(crop_y_spinbutton, "crop_y_spinbutton");
197 gtk_widget_show(crop_y_spinbutton);
198 gtk_box_pack_start(GTK_BOX(hbox6), crop_y_spinbutton, FALSE, TRUE, 0);
199
200 hbox7 = gtk_hbox_new(FALSE, 0);
201 gtk_widget_set_name(hbox7, "hbox7");
202 gtk_widget_show(hbox7);
203 gtk_table_attach(GTK_TABLE(table2), hbox7, 1, 2, 2, 3,
204 (GtkAttachOptions)(GTK_FILL),
205 (GtkAttachOptions)(GTK_FILL), 0, 0);
206
207 crop_width_spinbutton_adj = gtk_adjustment_new(1, 0, 300, 1, 10, 1);
208 crop_width_spinbutton = gtk_spin_button_new(GTK_ADJUSTMENT(crop_width_spinbutton_adj), 1, 0);
209 gtk_widget_set_name(crop_width_spinbutton, "crop_width_spinbutton");
210 gtk_widget_show(crop_width_spinbutton);
211 gtk_box_pack_start(GTK_BOX(hbox7), crop_width_spinbutton, FALSE, FALSE, 0);
212
213 hbox8 = gtk_hbox_new(FALSE, 0);
214 gtk_widget_set_name(hbox8, "hbox8");
215 gtk_widget_show(hbox8);
216 gtk_table_attach(GTK_TABLE(table2), hbox8, 1, 2, 3, 4,
217 (GtkAttachOptions)(GTK_FILL),
218 (GtkAttachOptions)(GTK_FILL), 0, 0);
219
220 crop_height_spinbutton_adj = gtk_adjustment_new(1, 0, 300, 1, 10, 1);
221 crop_height_spinbutton = gtk_spin_button_new(GTK_ADJUSTMENT(crop_height_spinbutton_adj), 1, 0);
222 gtk_widget_set_name(crop_height_spinbutton, "crop_height_spinbutton");
223 gtk_widget_show(crop_height_spinbutton);
224 gtk_box_pack_start(GTK_BOX(hbox8), crop_height_spinbutton, FALSE, FALSE, 0);
225
226 vbox4 = gtk_vbox_new(FALSE, 6);
227 gtk_widget_set_name(vbox4, "vbox4");
228 gtk_widget_show(vbox4);
229 gtk_box_pack_start(GTK_BOX(vbox1), vbox4, FALSE, TRUE, 0);
230
231 label7 = gtk_label_new("<b>Aspect ratio</b>");
232 gtk_widget_set_name(label7, "label7");
233 gtk_widget_show(label7);
234 gtk_box_pack_start(GTK_BOX(vbox4), label7, FALSE, FALSE, 0);
235 gtk_label_set_use_markup(GTK_LABEL(label7), TRUE);
236 gtk_misc_set_alignment(GTK_MISC(label7), 0, 0.5);
237
238 hbox3 = gtk_hbox_new(FALSE, 0);
239 gtk_widget_set_name(hbox3, "hbox3");
240 gtk_widget_show(hbox3);
241 gtk_box_pack_start(GTK_BOX(vbox4), hbox3, FALSE, FALSE, 0);
242
243 label8 = gtk_label_new(" ");
244 gtk_widget_set_name(label8, "label8");
245 gtk_widget_show(label8);
246 gtk_box_pack_start(GTK_BOX(hbox3), label8, FALSE, FALSE, 0);
247
248 table3 = gtk_table_new(2, 2, FALSE);
249 gtk_widget_set_name(table3, "table3");
250 gtk_widget_show(table3);
251 gtk_box_pack_start(GTK_BOX(hbox3), table3, TRUE, TRUE, 0);
252 gtk_table_set_row_spacings(GTK_TABLE(table3), 6);
253 gtk_table_set_col_spacings(GTK_TABLE(table3), 6);
254
255 hbox10 = gtk_hbox_new(FALSE, 6);
256 gtk_widget_set_name(hbox10, "hbox10");
257 gtk_widget_show(hbox10);
258 gtk_table_attach(GTK_TABLE(table3), hbox10, 0, 2, 1, 2,
259 (GtkAttachOptions)(GTK_FILL),
260 (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), 0, 0);
261
262 custom_ratio_box = gtk_hbox_new(FALSE, 6);
263 gtk_widget_set_name(custom_ratio_box, "custom_ratio_box");
264 gtk_widget_show(custom_ratio_box);
265 gtk_box_pack_start(GTK_BOX(hbox10), custom_ratio_box, TRUE, TRUE, 0);
266
267 ratio_w_spinbutton_adj = gtk_adjustment_new(1, 1, 9999, 1, 10, 10);
268 ratio_w_spinbutton = gtk_spin_button_new(GTK_ADJUSTMENT(ratio_w_spinbutton_adj), 1, 0);
269 gtk_widget_set_name(ratio_w_spinbutton, "ratio_w_spinbutton");
270 gtk_widget_show(ratio_w_spinbutton);
271 gtk_box_pack_start(GTK_BOX(custom_ratio_box), ratio_w_spinbutton, FALSE, TRUE, 0);
272
273 ratio_swap_button = gtk_button_new();
274 gtk_widget_set_name(ratio_swap_button, "ratio_swap_button");
275 gtk_widget_show(ratio_swap_button);
276 gtk_box_pack_start(GTK_BOX(custom_ratio_box), ratio_swap_button, FALSE, FALSE, 0);
277 gtk_button_set_relief(GTK_BUTTON(ratio_swap_button), GTK_RELIEF_NONE);
278
279 eventbox1 = gtk_event_box_new();
280 gtk_widget_set_name(eventbox1, "eventbox1");
281 gtk_widget_show(eventbox1);
282 gtk_container_add(GTK_CONTAINER(ratio_swap_button), eventbox1);
283
284 ratio_swap_image = gtk_image_new_from_stock("gtk-refresh", GTK_ICON_SIZE_BUTTON);
285 gtk_widget_set_name(ratio_swap_image, "ratio_swap_image");
286 gtk_widget_show(ratio_swap_image);
287 gtk_container_add(GTK_CONTAINER(eventbox1), ratio_swap_image);
288
289 ratio_h_spinbutton_adj = gtk_adjustment_new(1, 1, 9999, 1, 10, 10);
290 ratio_h_spinbutton = gtk_spin_button_new(GTK_ADJUSTMENT(ratio_h_spinbutton_adj), 1, 0);
291 gtk_widget_set_name(ratio_h_spinbutton, "ratio_h_spinbutton");
292 gtk_widget_show(ratio_h_spinbutton);
293 gtk_box_pack_start(GTK_BOX(custom_ratio_box), ratio_h_spinbutton, FALSE, TRUE, 0);
294 gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(ratio_h_spinbutton), GTK_UPDATE_IF_VALID);
295
296 ratio_optionmenu = gtk_option_menu_new();
297 gtk_widget_set_name(ratio_optionmenu, "ratio_optionmenu");
298 gtk_widget_show(ratio_optionmenu);
299 gtk_table_attach(GTK_TABLE(table3), ratio_optionmenu, 0, 2, 0, 1,
300 (GtkAttachOptions)(GTK_FILL), (GtkAttachOptions)(0), 0, 0);
301
302 menu1 = gtk_menu_new();
303 gtk_widget_set_name(menu1, "menu1");
304
305 ratio_none = gtk_menu_item_new_with_mnemonic("None");
306 gtk_widget_set_name(ratio_none, "ratio_none");
307 gtk_widget_show(ratio_none);
308 gtk_container_add(GTK_CONTAINER(menu1), ratio_none);
309
310 ratio_square = gtk_menu_item_new_with_mnemonic("Square");
311 gtk_widget_set_name(ratio_square, "ratio_square");
312 gtk_widget_show(ratio_square);
313 gtk_container_add(GTK_CONTAINER(menu1), ratio_square);
314
315 ratio_4x3 = gtk_menu_item_new_with_mnemonic("4 x 3(Book, DVD)");
316 gtk_widget_set_name(ratio_4x3, "ratio_4x3");
317 gtk_widget_show(ratio_4x3);
318 gtk_container_add(GTK_CONTAINER(menu1), ratio_4x3);
319
320 ratio_3x2 = gtk_menu_item_new_with_mnemonic("4 x 6(Postcard)");
321 gtk_widget_set_name(ratio_3x2, "ratio_3x2");
322 gtk_widget_show(ratio_3x2);
323 gtk_container_add(GTK_CONTAINER(menu1), ratio_3x2);
324
325 ratio_custom = gtk_menu_item_new_with_mnemonic("Custom");
326 gtk_widget_set_name(ratio_custom, "ratio_custom");
327 gtk_widget_show(ratio_custom);
328 gtk_container_add(GTK_CONTAINER(menu1), ratio_custom);
329
330 gtk_option_menu_set_menu(GTK_OPTION_MENU(ratio_optionmenu), menu1);
331
332 vbox5 = gtk_vbox_new(FALSE, 0);
333 gtk_widget_set_name(vbox5, "vbox5");
334 gtk_widget_show(vbox5);
335 gtk_box_pack_start(GTK_BOX(hbox1), vbox5, TRUE, TRUE, 0);
336 116
337 frame1 = gtk_frame_new(NULL); 117 frame1 = gtk_frame_new(NULL);
338 gtk_widget_set_name(frame1, "frame1"); 118 gtk_widget_set_name(frame1, "frame1");
339 gtk_widget_show(frame1); 119 gtk_widget_show(frame1);
340 gtk_box_pack_start(GTK_BOX(vbox5), frame1, TRUE, TRUE, 0); 120 gtk_box_pack_start(GTK_BOX(vbox5), frame1, TRUE, TRUE, 0);
343 vbox7 = gtk_vbox_new(FALSE, 6); 123 vbox7 = gtk_vbox_new(FALSE, 6);
344 gtk_widget_set_name(vbox7, "vbox7"); 124 gtk_widget_set_name(vbox7, "vbox7");
345 gtk_widget_show(vbox7); 125 gtk_widget_show(vbox7);
346 gtk_container_add(GTK_CONTAINER(frame1), vbox7); 126 gtk_container_add(GTK_CONTAINER(frame1), vbox7);
347 127
348 nav_container = gtk_hbox_new(FALSE, 0); 128 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_x_spinbutton")), "value_changed",
349 gtk_widget_set_name(nav_container, "nav_container"); 129 G_CALLBACK(selection_x_value_changed_cb), data);
350 gtk_widget_show(nav_container); 130 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_image")), "selection_changed",
351 gtk_box_pack_start(GTK_BOX(vbox7), nav_container, TRUE, TRUE, 0); 131 G_CALLBACK(selection_changed_cb), data);
352 132 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "ratio_swap_button")), "clicked",
353 /* image_area */ 133 G_CALLBACK(ratio_swap_button_cb), NULL);
354 image_buffer = gdk_pixbuf_new_from_file(image_filename, NULL); 134 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "ratio_optionmenu")), "changed",
355 image_area = gtk_image_new_from_pixbuf(image_buffer); 135 G_CALLBACK(ratio_optionmenu_changed_cb), NULL);
356
357 gtk_widget_set_name(image_area, "image_area");
358 gtk_widget_show(image_area);
359 gtk_box_pack_start(GTK_BOX(nav_container), image_area, TRUE, TRUE, 0);
360
361 hbox16 = gtk_hbox_new(FALSE, 6);
362 gtk_widget_set_name(hbox16, "hbox16");
363 gtk_widget_show(hbox16);
364 gtk_box_pack_start(GTK_BOX(vbox7), hbox16, FALSE, TRUE, 0);
365
366 hbox17 = gtk_hbox_new(FALSE, 0);
367 gtk_widget_set_name(hbox17, "hbox17");
368 gtk_widget_show(hbox17);
369 gtk_box_pack_end(GTK_BOX(hbox16), hbox17, FALSE, TRUE, 0);
370
371 crop_zoom_in_button = gtk_button_new();
372 gtk_widget_set_name(crop_zoom_in_button, "crop_zoom_in_button");
373 gtk_widget_show(crop_zoom_in_button);
374 gtk_box_pack_start(GTK_BOX(hbox17), crop_zoom_in_button, FALSE, FALSE, 0);
375 gtk_button_set_relief(GTK_BUTTON(crop_zoom_in_button), GTK_RELIEF_NONE);
376
377 image2 = gtk_image_new_from_stock("gtk-zoom-in", GTK_ICON_SIZE_BUTTON);
378 gtk_widget_set_name(image2, "image2");
379 gtk_widget_show(image2);
380 gtk_container_add(GTK_CONTAINER(crop_zoom_in_button), image2);
381
382 crop_zoom_out_button = gtk_button_new();
383 gtk_widget_set_name(crop_zoom_out_button, "crop_zoom_out_button");
384 gtk_widget_show(crop_zoom_out_button);
385 gtk_box_pack_start(GTK_BOX(hbox17), crop_zoom_out_button, FALSE, FALSE, 0);
386 gtk_button_set_relief(GTK_BUTTON(crop_zoom_out_button), GTK_RELIEF_NONE);
387
388 image4 = gtk_image_new_from_stock("gtk-zoom-out", GTK_ICON_SIZE_BUTTON);
389 gtk_widget_set_name(image4, "image4");
390 gtk_widget_show(image4);
391 gtk_container_add(GTK_CONTAINER(crop_zoom_out_button), image4);
392
393 crop_zoom_100_button = gtk_button_new();
394 gtk_widget_set_name(crop_zoom_100_button, "crop_zoom_100_button");
395 gtk_widget_show(crop_zoom_100_button);
396 gtk_box_pack_start(GTK_BOX(hbox17), crop_zoom_100_button, FALSE, FALSE, 0);
397 gtk_button_set_relief(GTK_BUTTON(crop_zoom_100_button), GTK_RELIEF_NONE);
398
399 image3 = gtk_image_new_from_stock("gtk-zoom-100", GTK_ICON_SIZE_BUTTON);
400 gtk_widget_set_name(image3, "image3");
401 gtk_widget_show(image3);
402 gtk_container_add(GTK_CONTAINER(crop_zoom_100_button), image3);
403
404 crop_zoom_fit_button = gtk_button_new();
405 gtk_widget_set_name(crop_zoom_fit_button, "crop_zoom_fit_button");
406 gtk_widget_show(crop_zoom_fit_button);
407 gtk_box_pack_start(GTK_BOX(hbox17), crop_zoom_fit_button, FALSE, FALSE, 0);
408 gtk_button_set_relief(GTK_BUTTON(crop_zoom_fit_button), GTK_RELIEF_NONE);
409
410 image1 = gtk_image_new_from_stock("gtk-zoom-fit", GTK_ICON_SIZE_BUTTON);
411 gtk_widget_set_name(image1, "image1");
412 gtk_widget_show(image1);
413 gtk_container_add(GTK_CONTAINER(crop_zoom_fit_button), image1);
414
415
416
417 /*
418 okay_box = gtk_hbox_new(FALSE, 0);
419 gtk_widget_set_name(okay_box, "okay_box");
420 gtk_widget_show(okay_box);
421 gtk_box_pack_end(GTK_BOX(hbox16), okay_box, FALSE, TRUE, 0);
422 */
423
424 crop_okbutton = gtk_button_new();
425 gtk_widget_set_name(crop_okbutton, "crop_okbutton");
426 gtk_widget_show(crop_okbutton);
427 gtk_box_pack_end(GTK_BOX(dialog_vbox1), crop_okbutton, FALSE, FALSE, 0);
428 GTK_WIDGET_SET_FLAGS(crop_okbutton, GTK_CAN_DEFAULT);
429
430 alignment1 = gtk_alignment_new(0.5, 0.5, 0, 0);
431 gtk_widget_set_name(alignment1, "alignment1");
432 gtk_widget_show(alignment1);
433 gtk_container_add(GTK_CONTAINER(crop_okbutton), alignment1);
434
435 hbox11 = gtk_hbox_new(FALSE, 2);
436 gtk_widget_set_name(hbox11, "hbox11");
437 gtk_widget_show(hbox11);
438 gtk_container_add(GTK_CONTAINER(alignment1), hbox11);
439
440 crop_image = gtk_image_new_from_stock("gtk-ok", GTK_ICON_SIZE_BUTTON);
441 gtk_widget_set_name(crop_image, "crop_image");
442 gtk_widget_show(crop_image);
443 gtk_box_pack_start(GTK_BOX(hbox11), crop_image, FALSE, FALSE, 0);
444
445 label12 = gtk_label_new_with_mnemonic("_Crop");
446 gtk_widget_set_name(label12, "label12");
447 gtk_widget_show(label12);
448 gtk_box_pack_start(GTK_BOX(hbox11), label12, FALSE, FALSE, 0);
449
450
451
452
453
454 g_signal_connect(G_OBJECT(cropper_window), "show",
455 G_CALLBACK(on_cropper_window_create), NULL);
456 /* destroy */
457 g_signal_connect(G_OBJECT(cropper_window), "destroy",
458 G_CALLBACK(on_cropper_window_destroy), NULL);
459
460
461 /* crop */
462 g_signal_connect(G_OBJECT(crop_okbutton), "clicked",
463 G_CALLBACK(on_crop_clicked), NULL);
464
465
466 /* zoom */
467 g_signal_connect(G_OBJECT(crop_zoom_in_button), "clicked",
468 G_CALLBACK(on_zoom_in_button_clicked), NULL);
469 g_signal_connect(G_OBJECT(crop_zoom_out_button), "clicked",
470 G_CALLBACK(on_zoom_out_button_clicked), NULL);
471 g_signal_connect(G_OBJECT(crop_zoom_100_button), "clicked",
472 G_CALLBACK(on_zoom_100_button_clicked), NULL);
473 g_signal_connect(G_OBJECT(crop_zoom_fit_button), "clicked",
474 G_CALLBACK(on_zoom_fit_button_clicked), NULL);
475
476
477 /* aspect ratio */
478 /*
479 g_signal_connect(G_OBJECT(ratio_w_spinbutton), "value_changed",
480 G_CALLBACK(on_ratio_w_spinbutton_value_changed), NULL);
481 g_signal_connect(G_OBJECT(ratio_swap_button), "clicked",
482 G_CALLBACK(on_ratio_swap_button_clicked), NULL);
483 g_signal_connect(G_OBJECT(ratio_h_spinbutton), "value_changed",
484 G_CALLBACK(on_ratio_h_spinbutton_value_changed), NULL);
485
486 g_signal_connect(G_OBJECT(ratio_none), "activate", 136 g_signal_connect(G_OBJECT(ratio_none), "activate",
487 G_CALLBACK(on_ratio_none_activate), NULL); 137 G_CALLBACK(on_ratio_none_activate), NULL);
488 g_signal_connect(G_OBJECT(ratio_square), "activate",
489 G_CALLBACK(on_ratio_square_activate), NULL);
490 g_signal_connect(G_OBJECT(ratio_4x3), "activate",
491 G_CALLBACK(on_ratio_4x3_activate), NULL);
492 g_signal_connect(G_OBJECT(ratio_3x2), "activate",
493 G_CALLBACK(on_ratio_3x2_activate), NULL);
494 g_signal_connect(G_OBJECT(ratio_custom), "activate",
495 G_CALLBACK(on_ratio_custom_activate), NULL);
496
497 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "ratio_optionmenu")), "changed",
498 G_CALLBACK(ratio_optionmenu_changed_cb), NULL);
499 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "ratio_w_spinbutton")), "value_changed",
500 G_CALLBACK(ratio_value_changed_cb), NULL);
501 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "ratio_h_spinbutton")), "value_changed",
502 G_CALLBACK(ratio_value_changed_cb), NULL);
503 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "ratio_swap_button")), "clicked",
504 G_CALLBACK(ratio_swap_button_cb), NULL);
505 */ 138 */
506
507
508 /* selection */
509 /*
510 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_x_spinbutton")), "value_changed",
511 G_CALLBACK(selection_x_value_changed_cb), data);
512 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_y_spinbutton")), "value_changed",
513 G_CALLBACK(selection_y_value_changed_cb), data);
514 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_width_spinbutton")), "value_changed",
515 G_CALLBACK(selection_width_value_changed_cb), data);
516 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_height_spinbutton")), "value_changed",
517 G_CALLBACK(selection_height_value_changed_cb), data);
518 g_signal_connect(G_OBJECT(lookup_widget(cropper_window, "crop_image")), "selection_changed",
519 G_CALLBACK(selection_changed_cb), data);
520 */
521
522
523
524
525
526
527
528
529 g_signal_connect(cropper_window, "key-press-event", G_CALLBACK(on_key_press), NULL);
530
531
532
533
534
535
536
537
538
539 /* Store pointers to all widgets, for use by lookup_widget(). */
540 GLADE_HOOKUP_OBJECT_NO_REF(cropper_window, cropper_window, "cropper_window");
541 GLADE_HOOKUP_OBJECT(cropper_window, dialog_vbox1, "dialog_vbox1");
542 GLADE_HOOKUP_OBJECT(cropper_window, hbox1, "hbox1");
543 GLADE_HOOKUP_OBJECT(cropper_window, vbox1, "vbox1");
544 GLADE_HOOKUP_OBJECT(cropper_window, vbox2, "vbox2");
545 GLADE_HOOKUP_OBJECT(cropper_window, label1, "label1");
546 GLADE_HOOKUP_OBJECT(cropper_window, hbox2, "hbox2");
547 GLADE_HOOKUP_OBJECT(cropper_window, label2, "label2");
548 GLADE_HOOKUP_OBJECT(cropper_window, table2, "table2");
549 GLADE_HOOKUP_OBJECT(cropper_window, label3, "label3");
550 GLADE_HOOKUP_OBJECT(cropper_window, label5, "label5");
551 GLADE_HOOKUP_OBJECT(cropper_window, label4, "label4");
552 GLADE_HOOKUP_OBJECT(cropper_window, label6, "label6");
553 GLADE_HOOKUP_OBJECT(cropper_window, hbox5, "hbox5");
554 GLADE_HOOKUP_OBJECT(cropper_window, crop_x_spinbutton, "crop_x_spinbutton");
555 GLADE_HOOKUP_OBJECT(cropper_window, hbox6, "hbox6");
556 GLADE_HOOKUP_OBJECT(cropper_window, crop_y_spinbutton, "crop_y_spinbutton");
557 GLADE_HOOKUP_OBJECT(cropper_window, hbox7, "hbox7");
558 GLADE_HOOKUP_OBJECT(cropper_window, crop_width_spinbutton, "crop_width_spinbutton");
559 GLADE_HOOKUP_OBJECT(cropper_window, hbox8, "hbox8");
560 GLADE_HOOKUP_OBJECT(cropper_window, crop_height_spinbutton, "crop_height_spinbutton");
561 GLADE_HOOKUP_OBJECT(cropper_window, vbox4, "vbox4");
562 GLADE_HOOKUP_OBJECT(cropper_window, label7, "label7");
563 GLADE_HOOKUP_OBJECT(cropper_window, hbox3, "hbox3");
564 GLADE_HOOKUP_OBJECT(cropper_window, label8, "label8");
565 GLADE_HOOKUP_OBJECT(cropper_window, table3, "table3");
566 GLADE_HOOKUP_OBJECT(cropper_window, hbox10, "hbox10");
567 GLADE_HOOKUP_OBJECT(cropper_window, custom_ratio_box, "custom_ratio_box");
568 GLADE_HOOKUP_OBJECT(cropper_window, ratio_w_spinbutton, "ratio_w_spinbutton");
569 GLADE_HOOKUP_OBJECT(cropper_window, ratio_swap_button, "ratio_swap_button");
570 GLADE_HOOKUP_OBJECT(cropper_window, eventbox1, "eventbox1");
571 GLADE_HOOKUP_OBJECT(cropper_window, ratio_swap_image, "ratio_swap_image");
572 GLADE_HOOKUP_OBJECT(cropper_window, ratio_h_spinbutton, "ratio_h_spinbutton");
573 GLADE_HOOKUP_OBJECT(cropper_window, ratio_optionmenu, "ratio_optionmenu");
574 GLADE_HOOKUP_OBJECT(cropper_window, menu1, "menu1");
575 GLADE_HOOKUP_OBJECT(cropper_window, ratio_none, "ratio_none");
576 GLADE_HOOKUP_OBJECT(cropper_window, ratio_square, "ratio_square");
577 GLADE_HOOKUP_OBJECT(cropper_window, ratio_4x3, "ratio_4x3");
578 GLADE_HOOKUP_OBJECT(cropper_window, ratio_3x2, "ratio_3x2");
579 GLADE_HOOKUP_OBJECT(cropper_window, ratio_custom, "ratio_custom");
580 GLADE_HOOKUP_OBJECT(cropper_window, vbox5, "vbox5");
581 GLADE_HOOKUP_OBJECT(cropper_window, frame1, "frame1");
582 GLADE_HOOKUP_OBJECT(cropper_window, vbox7, "vbox7");
583 GLADE_HOOKUP_OBJECT(cropper_window, nav_container, "nav_container");
584 GLADE_HOOKUP_OBJECT(cropper_window, image_area, "image_area");
585 GLADE_HOOKUP_OBJECT(cropper_window,(GtkWidget*) image_buffer, "image_buffer");
586 GLADE_HOOKUP_OBJECT(cropper_window, hbox16, "hbox16");
587 GLADE_HOOKUP_OBJECT(cropper_window, hbox17, "hbox17");
588 GLADE_HOOKUP_OBJECT(cropper_window, crop_zoom_in_button, "crop_zoom_in_button");
589 GLADE_HOOKUP_OBJECT(cropper_window, image2, "image2");
590 GLADE_HOOKUP_OBJECT(cropper_window, crop_zoom_out_button, "crop_zoom_out_button");
591 GLADE_HOOKUP_OBJECT(cropper_window, image4, "image4");
592 GLADE_HOOKUP_OBJECT(cropper_window, crop_zoom_100_button, "crop_zoom_100_button");
593 GLADE_HOOKUP_OBJECT(cropper_window, image3, "image3");
594 GLADE_HOOKUP_OBJECT(cropper_window, crop_zoom_fit_button, "crop_zoom_fit_button");
595 GLADE_HOOKUP_OBJECT(cropper_window, image1, "image1");
596 /*GLADE_HOOKUP_OBJECT_NO_REF(cropper_window, dialog_action_area1, "dialog_action_area1"); */
597 GLADE_HOOKUP_OBJECT(cropper_window, crop_okbutton, "crop_okbutton");
598 GLADE_HOOKUP_OBJECT(cropper_window, alignment1, "alignment1");
599 GLADE_HOOKUP_OBJECT(cropper_window, hbox11, "hbox11");
600 GLADE_HOOKUP_OBJECT(cropper_window, crop_image, "crop_image");
601 GLADE_HOOKUP_OBJECT(cropper_window, label12, "label12");
602
603
604 return cropper_window;
605 }
606