Package: grun Version: 0.9.2-14 Severity: wishlist Tags: patch
Using the 'fixed' layout for widgets causes them to be unable to adjust to changes in text size, such as that caused by using different fonts, or by translations. The following patch removes said use. ---------------------------------------------------------------------- diff --git a/grun.c b/grun.c index 953d676..8f259c2 100644 --- a/grun.c +++ b/grun.c @@ -1059,7 +1059,7 @@ int main(int argc, char **argv) { #else int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nShowCmd) { #endif - GtkWidget *win, *btn, *lbl, *cmb, *fix; + GtkWidget *win, *btn, *lbl, *cmb, *main_box, *button_box; GtkTooltips *tips; int c, len, persist, tooltips; char *home_env, *fname, *cmd, *icmd; @@ -1182,7 +1182,7 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS sprintf(fname, gettext("gRun %s"), VERSION); gtk_window_set_title(GTK_WINDOW(win), fname); g_free(fname); - gtk_widget_set_usize(GTK_WIDGET(win), 250, 100); + gtk_signal_connect(GTK_OBJECT (win), "destroy", (GtkSignalFunc) gexit, NULL); gtk_container_border_width(GTK_CONTAINER (win), 5); @@ -1194,12 +1194,15 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS gtk_tooltips_disable(tips); } - fix = gtk_fixed_new(); - gtk_container_add(GTK_CONTAINER(win), fix); + main_box = gtk_vbox_new(FALSE, 5); + gtk_container_add(GTK_CONTAINER(win), main_box); lbl = gtk_label_new(gettext("Launch Application")); - gtk_fixed_put(GTK_FIXED (fix), lbl, 65, 4); - gtk_widget_show(lbl); + button_box = gtk_hbutton_box_new(); + + gtk_box_pack_start_defaults(GTK_BOX (main_box), lbl); + gtk_box_pack_end_defaults(GTK_BOX (main_box), button_box); + list = loadHistory(); gdat->history = list; @@ -1214,8 +1217,9 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS cmb = gtk_combo_new(); gdat->cmb = cmb; gdat->rsp = NULL; - gtk_widget_set_usize(GTK_WIDGET (GTK_COMBO(cmb)->entry), 215, 24); - gtk_fixed_put(GTK_FIXED (fix), cmb, 5, 27); + + gtk_box_pack_start_defaults(GTK_BOX (main_box), cmb); + if (list) { gtk_combo_set_popdown_strings(GTK_COMBO (cmb), list); gtk_entry_set_text(GTK_ENTRY (GTK_COMBO (cmb)->entry), list->data); @@ -1231,14 +1235,12 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS } gtk_signal_connect(GTK_OBJECT (GTK_COMBO (cmb)->entry), "key_press_event", (GtkSignalFunc) gclick, (gpointer) gdat); gtk_window_set_focus(GTK_WINDOW (win), GTK_COMBO (cmb)->entry); - gtk_widget_show(cmb); btn = gtk_button_new_with_label(gettext("OK")); - gtk_widget_set_usize(GTK_WIDGET(btn), 70, 24); - gtk_fixed_put(GTK_FIXED (fix), btn, 5, 60); + + gtk_box_pack_start_defaults(GTK_BOX (button_box), btn); gtk_signal_connect(GTK_OBJECT (btn), "clicked", (GtkSignalFunc) launch, (gpointer) gdat); gtk_tooltips_set_tip(tips, btn, gettext("Launch application"), gettext("The OK button launches the application given in the entry box")); - gtk_widget_show(btn); if (persist) { btn = gtk_button_new_with_label(gettext("Close")); @@ -1247,8 +1249,7 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS btn = gtk_button_new_with_label(gettext("Cancel")); } - gtk_widget_set_usize(GTK_WIDGET(btn), 70, 24); - gtk_fixed_put(GTK_FIXED (fix), btn, 85, 60); + gtk_box_pack_start_defaults(GTK_BOX (button_box), btn); gtk_signal_connect(GTK_OBJECT (btn), "clicked", (GtkSignalFunc) cancel, (gpointer) gdat); if (persist) { gtk_tooltips_set_tip(tips, btn, gettext("Close gRun"), gettext("The Close button will close the persistant gRun window")); @@ -1256,16 +1257,12 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS else { gtk_tooltips_set_tip(tips, btn, gettext("Cancel launch"), gettext("The Cancel button cancels the launch process and closes gRun")); } - gtk_widget_show(btn); btn = gtk_button_new_with_label(gettext("Browse")); - gtk_widget_set_usize(GTK_WIDGET(btn), 70, 24); - gtk_fixed_put(GTK_FIXED (fix), btn, 165, 60); + gtk_box_pack_start_defaults(GTK_BOX (button_box), btn); gtk_signal_connect(GTK_OBJECT (btn), "clicked", (GtkSignalFunc) browse, (gpointer) gdat); gtk_tooltips_set_tip(tips, btn, gettext("Browse for command"), gettext("The Browse button opens a file selection box so the user can browse for the command to launch")); - gtk_widget_show(btn); - gtk_widget_show(fix); gtk_window_set_policy(GTK_WINDOW (win), FALSE, FALSE, FALSE); gtk_widget_realize(win); @@ -1280,7 +1277,7 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nS g_free(mask); #endif #endif /* 0 */ - gtk_widget_show(win); + gtk_widget_show_all(win); gtk_main(); return 0; } ---------------------------------------------------------------------- -- Rodrigo Gallardo GPG-Fingerprint: 7C81 E60C 442E 8FBC D975 2F49 0199 8318 ADC9 BC28
signature.asc
Description: Digital signature