annotate callbacks.c @ 13:13bc21684b8a

added zooming with buttons
author meillo@marmaro.de
date Thu, 04 Mar 2010 17:05:38 +0100
parents c18ba4ea1514
children da18f2d4f92f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
1 #include <gtk/gtk.h>
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
2 #include <gdk-pixbuf/gdk-pixbuf.h>
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
3 #include <gdk/gdkkeysyms.h>
2
e359bea4c8ac added code for ratio swap; new names for ratio operations; added main.h; some more
meillo@marmaro.de
parents: 1
diff changeset
4 #include "main.h"
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
5 #include "callbacks.h"
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
6 #include "support.h"
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
7
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
8 int image_width;
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
9 int image_height;
10
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
10 float inc = 0.3;
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
11 float zoom = 1.0;
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
12
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
13
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
14 /*
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
15 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
16 update_spin_button_ratio(GtkWidget* spinbutton)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
17 {
3
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
18 g_print("ratio change: %f\n", ratio);
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
19 on_ratio_w_spinbutton_value_changed(spinbutton, NULL);
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
20 }
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
21
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
22
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
23 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
24 on_ratio_none_activate(GtkMenuItem* menuitem, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
25 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
26 ratio = 1;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
27 update_spin_button_ratio(lookup_widget(cropper_window, "ratio_w_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
28 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
29
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
30
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
31 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
32 on_ratio_square_activate(GtkMenuItem* menuitem, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
33 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
34 ratio = 1;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
35 update_spin_button_ratio(lookup_widget(cropper_window, "ratio_w_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
36 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
37
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
38
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
39 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
40 on_ratio_4x3_activate(GtkMenuItem* menuitem, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
41 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
42 ratio = 4.0/3.0;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
43 update_spin_button_ratio(lookup_widget(cropper_window, "ratio_w_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
44 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
45
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
46
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
47 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
48 on_ratio_3x2_activate(GtkMenuItem* menuitem, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
49 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
50 ratio = 1.5;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
51 update_spin_button_ratio(lookup_widget(cropper_window, "ratio_w_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
52 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
53
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
54
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
55 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
56 on_ratio_custom_activate(GtkMenuItem* menuitem, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
57 {
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
58 ratio = gtk_spin_button_get_value(lookup_widget(cropper_window, "ratio_w_spinbutton"))
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
59 / gtk_spin_button_get_value(lookup_widget(cropper_window, "ratio_h_spinbutton"));
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
60 update_spin_button_ratio(lookup_widget(cropper_window, "ratio_w_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
61 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
62 */
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
63
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
64
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
65
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
66
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
67
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
68
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
69
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
70
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
71
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
72 /*
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
73 static void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
74 ratio_optionmenu_changed_cb(GtkOptionMenu* optionmenu, gpointer unser_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
75 {
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
76 int idx = gtk_option_menu_get_history(optionmenu);
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
77 int w = 1, h = 1;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
78 gboolean use_ratio = TRUE;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
79
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
80 switch (idx) {
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
81 case GTH_CROP_RATIO_NONE:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
82 use_ratio = FALSE;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
83 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
84 case GTH_CROP_RATIO_SQUARE:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
85 w = h = 1;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
86 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
87 case GTH_CROP_RATIO_IMAGE:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
88 w = lookup_widget(cropper_window, "image_width");
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
89 h = lookup_widget(cropper_window, "image_height");
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
90 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
91 case GTH_CROP_RATIO_DISPLAY:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
92 w = lookup_widget(cropper_window, "display_width");
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
93 h = lookup_widget(cropper_window, "display_height");
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
94 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
95 case GTH_CROP_RATIO_4_3:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
96 w = 4;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
97 h = 3;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
98 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
99 case GTH_CROP_RATIO_4_6:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
100 w = 4;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
101 h = 6;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
102 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
103 case GTH_CROP_RATIO_CUSTOM:
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
104 default:
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
105 w = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
106 lookup_widget(cropper_window, "ratio_w_spinbutton")));
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
107 h = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
108 lookup_widget(cropper_window, "ratio_h_spinbutton")));
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
109 break;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
110 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
111
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
112 gtk_widget_set_sensitive(lookup_widget(cropper_window, "custom_ratio_box"),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
113 idx == GTH_CROP_RATIO_CUSTOM);
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
114 set_spin_value(cropper_window, lookup_widget(cropper_window, "ratio_w_spinbutton"), w);
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
115 set_spin_value(cropper_window, lookup_widget(cropper_window, "ratio_h_spinbutton"), h);
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
116
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
117 gth_image_selector_set_ratio(GTH_IMAGE_SELECTOR(lookup_widget(cropper_window, "crop_image")),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
118 use_ratio, (double) w / h);
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
119 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
120
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
121
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
122 static void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
123 ratio_value_changed_cb(GtkSpinButton* spin, gpointer unser_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
124 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
125 int w, h;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
126
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
127 w = gtk_spin_button_get_value_as_int(lookup_widget(cropper_window, "ratio_w_spinbutton"));
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
128 h = gtk_spin_button_get_value_as_int(lookup_widget(cropper_window, "ratio_h_spinbutton"));
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
129
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
130 gth_image_selector_set_ratio(GTH_IMAGE_SELECTOR(
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
131 lookup_widget(cropper_window, "crop_image")), TRUE, (double) w / h);
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
132 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
133
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
134
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
135 static void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
136 ratio_swap_button_cb(GtkButton* button, gpointer unser_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
137 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
138 int w, h;
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
139
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
140 w = gtk_spin_button_get_value_as_int(lookup_widget(cropper_window, "ratio_w_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
141 h = gtk_spin_button_get_value_as_int(lookup_widget(cropper_window, "ratio_h_spinbutton"));
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
142
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
143 set_spin_value(cropper_window, lookup_widget(cropper_window, "ratio_w_spinbutton"), h);
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
144 set_spin_value(cropper_window, lookup_widget(cropper_window, "ratio_h_spinbutton"), w);
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
145
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
146 gth_image_selector_set_ratio(GTH_IMAGE_SELECTOR(lookup_widget(cropper_window,
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
147 "crop_image")), TRUE, (double) h / w);
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
148 }
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
149
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
150 */
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
151
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
152
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
153
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
154
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
155
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
156
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
157
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
158
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
159 /*
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
160 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
161 on_ratio_w_spinbutton_value_changed(GtkSpinButton* spinbutton, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
162 {
3
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
163 g_print("spinbutton W - ratio: %f\n", ratio);
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
164 gtk_spin_button_set_value(lookup_widget(cropper_window, "ratio_h_spinbutton"),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
165 gtk_spin_button_get_value(spinbutton) / ratio);
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
166 }
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
167
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
168
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
169 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
170 on_ratio_w_spinbutton_change_value(GtkSpinButton* spinbutton, GtkScrollType scroll, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
171 {
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
172 }
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
173
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
174
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
175 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
176 on_ratio_h_spinbutton_change_value(GtkSpinButton* spinbutton, GtkScrollType scroll, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
177 {
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
178 }
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
179
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
180
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
181 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
182 on_ratio_h_spinbutton_value_changed(GtkSpinButton* spinbutton, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
183 {
3
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
184 g_print("spinbutton H - ratio: %f\n", ratio);
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
185 gtk_spin_button_set_value(lookup_widget(cropper_window, "ratio_w_spinbutton"),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
186 gtk_spin_button_get_value(spinbutton) * ratio);
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
187
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
188 }
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
189
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
190
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
191 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
192 on_ratio_swap_button_clicked(GtkButton* button, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
193 {
2
e359bea4c8ac added code for ratio swap; new names for ratio operations; added main.h; some more
meillo@marmaro.de
parents: 1
diff changeset
194
3
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
195 ratio = 1.0 / ratio;
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
196 gtk_spin_button_set_value(lookup_widget(cropper_window, "ratio_w_spinbutton"),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
197 gtk_spin_button_get_value(lookup_widget(cropper_window,
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
198 "ratio_h_spinbutton")));
3
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
199 gtk_spin_button_update(lookup_widget(cropper_window, "ratio_w_spinbutton"));
6aaba3a61563 added ratio control code
meillo@marmaro.de
parents: 2
diff changeset
200
2
e359bea4c8ac added code for ratio swap; new names for ratio operations; added main.h; some more
meillo@marmaro.de
parents: 1
diff changeset
201 }
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
202 */
2
e359bea4c8ac added code for ratio swap; new names for ratio operations; added main.h; some more
meillo@marmaro.de
parents: 1
diff changeset
203
e359bea4c8ac added code for ratio swap; new names for ratio operations; added main.h; some more
meillo@marmaro.de
parents: 1
diff changeset
204
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
205 void
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
206 update_title(char* zoom)
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
207 {
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
208 char title[128];
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
209 snprintf(title, 128, "cropper (%s) %dx%d+%d+%d", zoom, w, h, x, y);
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
210 gtk_window_set_title(GTK_WINDOW(cropper_window), title);
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
211 }
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
212
2
e359bea4c8ac added code for ratio swap; new names for ratio operations; added main.h; some more
meillo@marmaro.de
parents: 1
diff changeset
213
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
214 /* zoom */
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
215 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
216 set_zoom()
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
217 {
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
218 static GdkPixbuf* pixbuf_new;
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
219 g_object_unref(pixbuf_new);
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
220
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
221 pixbuf_new = gdk_pixbuf_scale_simple(image_buffer, image_width*zoom, image_height*zoom,
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
222 GDK_INTERP_BILINEAR);
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
223 gtk_image_set_from_pixbuf((GtkImage*) lookup_widget(cropper_window, "image_area"), pixbuf_new);
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
224 }
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
225
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
226 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
227 on_zoom_in_button_clicked(GtkObject* object, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
228 {
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
229 zoom *= 1 + inc;
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
230 set_zoom();
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
231 }
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
232
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
233 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
234 on_zoom_out_button_clicked(GtkObject* object, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
235 {
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
236 zoom *= 1 - inc;
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
237 set_zoom();
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
238 }
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
239
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
240 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
241 on_zoom_100_button_clicked(GtkObject* object, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
242 {
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
243 zoom = 1.0;
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
244 set_zoom();
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
245 }
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
246
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
247 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
248 on_zoom_fit_button_clicked(GtkObject* object, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
249 {
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
250 int w, h;
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
251 float zw, zh;
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
252 GtkWidget* image_a;
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
253
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
254 image_a = (GtkWidget*) lookup_widget(cropper_window, "image_area");
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
255 gdk_drawable_get_size(image_a->window, &w, &h);
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
256
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
257 zw = w*1.0 / image_width;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
258 zh = h*1.0 / image_height;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
259
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
260 zoom = (zw < zh) ? zw : zh;
8
b0824876d379 memory is now freed aswell; added (a crappy) zoom2fit; did some casts to get rid of warnings
meillo@marmaro.de
parents: 7
diff changeset
261 set_zoom();
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
262 }
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
263
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
264
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
265
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
266
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
267
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
268
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
269
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
270 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
271 on_crop_clicked(GtkButton* button, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
272 {
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
273 char crop_call[256];
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
274
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
275 sprintf(crop_call, "echo \"convert -crop %ix%i+%i+%i %s cropped_%s\"",
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
276 gtk_spin_button_get_value_as_int((GtkSpinButton*) lookup_widget(cropper_window,
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
277 "crop_width_spinbutton")),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
278 gtk_spin_button_get_value_as_int((GtkSpinButton*) lookup_widget(cropper_window,
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
279 "crop_height_spinbutton")),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
280 gtk_spin_button_get_value_as_int((GtkSpinButton*) lookup_widget(cropper_window,
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
281 "crop_x_spinbutton")),
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
282 gtk_spin_button_get_value_as_int((GtkSpinButton*) lookup_widget(cropper_window,
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
283 "crop_y_spinbutton")),
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
284 image_filename,
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
285 image_filename
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
286 );
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
287 system(crop_call);
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
288 gtk_main_quit();
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
289 }
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
290
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
291
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
292 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
293 on_cropper_window_create(GtkObject* object, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
294 {
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
295 image_width = gdk_pixbuf_get_width(image_buffer);
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
296 image_height = gdk_pixbuf_get_height(image_buffer);
10
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
297
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
298 /*
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
299 image_buffer = gdk_pixbuf_new_from_file(image_filename, NULL);
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
300 image_area = gtk_image_new_from_pixbuf(image_buffer);
10
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
301
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
302 int w, h;
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
303 GtkWidget* image_a;
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
304
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
305 image_a = (GtkWidget*) lookup_widget(cropper_window, "image_area");
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
306 gdk_drawable_get_size(image_a->window, &w, &h);
10
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
307
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
308 image_width = w - 200;
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
309 image_height = h - 150;
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
310 set_zoom();
5e282003f0c1 minor changes; besser indenting
meillo@marmaro.de
parents: 9
diff changeset
311 */
7
ec2d11d96fb0 image is now gdk-pixbuff; zoom implemented in a basic way
meillo@marmaro.de
parents: 4
diff changeset
312 }
4
2f11ab3e6047 added option handling; added output for convert; commented all ratio code cause it is not really important now
meillo@marmaro.de
parents: 3
diff changeset
313
11
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
314 void
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
315 on_cropper_window_destroy(GtkObject* object, gpointer user_data)
c18ba4ea1514 just cosmetic changes
meillo@marmaro.de
parents: 10
diff changeset
316 {
0
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
317 gtk_main_quit();
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
318 }
ca9155129253 initial commit
meillo@marmaro.de
parents:
diff changeset
319
13
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
320
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
321
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
322
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
323 gboolean
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
324 on_key_press(GtkWidget* window, GdkEventKey* pKey, gpointer userdata)
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
325 {
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
326 if (pKey->type != GDK_KEY_PRESS) {
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
327 return FALSE;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
328 }
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
329 switch (pKey->keyval) {
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
330 case GDK_plus:
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
331 on_zoom_in_button_clicked(NULL, userdata);
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
332 break;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
333 case GDK_minus:
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
334 on_zoom_out_button_clicked(NULL, userdata);
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
335 break;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
336 case GDK_0:
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
337 on_zoom_100_button_clicked(NULL, userdata);
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
338 break;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
339 case GDK_f:
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
340 on_zoom_fit_button_clicked(NULL, userdata);
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
341 break;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
342 }
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
343 return TRUE;
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
344 }
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
345
13bc21684b8a added zooming with buttons
meillo@marmaro.de
parents: 11
diff changeset
346