101 |
on_mainwindow_keypress (GtkWidget *widget, GdkEventKey *event, gpointer data) |
on_mainwindow_keypress (GtkWidget *widget, GdkEventKey *event, gpointer data) |
102 |
{ |
{ |
103 |
gint result; |
gint result; |
104 |
GtkWidget *callentry, *myrstentry; |
GtkWidget *callentry, *rstentry, *myrstentry, *count; |
105 |
gchar *call; |
gchar *call, *countstr, *str; |
106 |
|
gint c; |
107 |
|
|
108 |
if (keyerwindow) |
if (keyerwindow) |
109 |
switch (event->keyval) |
switch (event->keyval) |
136 |
result = tonetkeyer (K_ABORT, NULL); |
result = tonetkeyer (K_ABORT, NULL); |
137 |
break; |
break; |
138 |
case GDK_Return: |
case GDK_Return: |
|
callentry = lookup_widget (mainwindow, "callentry"); |
|
139 |
myrstentry = lookup_widget (mainwindow, "myrstentry"); |
myrstentry = lookup_widget (mainwindow, "myrstentry"); |
140 |
|
callentry = lookup_widget (mainwindow, "callentry"); |
141 |
if (GTK_WIDGET_HAS_FOCUS (myrstentry)) |
if (GTK_WIDGET_HAS_FOCUS (myrstentry)) |
142 |
{ |
{ |
143 |
if (keyerstate.cqmode) |
if (keyerstate.cqmode) |
148 |
} |
} |
149 |
else if (GTK_WIDGET_HAS_FOCUS (callentry)) |
else if (GTK_WIDGET_HAS_FOCUS (callentry)) |
150 |
{ |
{ |
151 |
|
rstentry = lookup_widget (mainwindow, "rstentry"); |
152 |
call = gtk_editable_get_chars (GTK_EDITABLE (callentry), 0, -1); |
call = gtk_editable_get_chars (GTK_EDITABLE (callentry), 0, -1); |
153 |
if (strlen (call) > 0) |
if (strlen (call) > 0) |
154 |
{ |
{ |
156 |
cw (NULL, "f3"); |
cw (NULL, "f3"); |
157 |
else |
else |
158 |
cw (NULL, "f6"); |
cw (NULL, "f6"); |
159 |
|
count = lookup_widget (keyerwindow, "count"); |
160 |
|
c = gtk_spin_button_get_value (GTK_SPIN_BUTTON (count)); |
161 |
|
|
162 |
|
if (g_ascii_strcasecmp (preferences.defaulttxrst, "?")) |
163 |
|
{ |
164 |
|
if (g_strrstr (preferences.defaulttxrst, "#")) |
165 |
|
{ |
166 |
|
if (c < 10) |
167 |
|
countstr = g_strdup_printf ("00%d", c); |
168 |
|
else if (c < 100) |
169 |
|
countstr = g_strdup_printf ("0%d", c); |
170 |
|
else |
171 |
|
countstr = g_strdup_printf ("%d", c); |
172 |
|
str = my_strreplace (preferences.defaulttxrst, "#", |
173 |
|
countstr); |
174 |
|
g_free (countstr); |
175 |
|
gtk_entry_set_text (GTK_ENTRY (rstentry), str); |
176 |
|
g_free (str); |
177 |
|
} |
178 |
|
else |
179 |
|
gtk_entry_set_text (GTK_ENTRY (rstentry), |
180 |
|
preferences.defaulttxrst); |
181 |
|
} |
182 |
|
if (g_ascii_strcasecmp (preferences.defaultrxrst, "?")) |
183 |
|
gtk_entry_set_text (GTK_ENTRY (myrstentry), |
184 |
|
preferences.defaultrxrst); |
185 |
gtk_widget_grab_focus (myrstentry); |
gtk_widget_grab_focus (myrstentry); |
186 |
gtk_editable_set_position (GTK_EDITABLE(myrstentry), -1); |
gtk_editable_set_position (GTK_EDITABLE(myrstentry), -1); |
187 |
} |
} |