diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/citydlg.c freeciv/client/gui-gtk/citydlg.c --- FreecivCVS/client/gui-gtk/citydlg.c Sun Jul 9 23:31:59 2000 +++ freeciv/client/gui-gtk/citydlg.c Sat Jul 22 09:16:18 2000 @@ -249,6 +249,7 @@ if(!(pdialog=get_city_dialog(pcity))) pdialog=create_city_dialog(pcity, make_modal); + gtk_set_relative_position(toplevel, pdialog->shell, 10, 10); gtk_widget_show(pdialog->shell); @@ -315,6 +316,7 @@ pdialog->change_shell=0; pdialog->shell=gtk_dialog_new(); + gtk_window_set_wmclass(GTK_WINDOW(pdialog->shell), g_get_prgname(), "city"); gtk_signal_connect(GTK_OBJECT(pdialog->shell),"delete_event", GTK_SIGNAL_FUNC(city_dialog_delete_callback),(gpointer)pdialog); gtk_window_set_position(GTK_WINDOW(pdialog->shell), GTK_WIN_POS_MOUSE); @@ -891,7 +893,7 @@ pdialog=(struct city_dialog *)data; - input_dialog_create(pdialog->shell, + input_dialog_create(GTK_WINDOW(pdialog->shell), /*"shellrenamecity"*/_("Rename City"), _("What should we rename the city to?"), pdialog->pcity->name, @@ -1787,6 +1789,7 @@ pdialog->change_shell=cshell; gtk_window_set_position (GTK_WINDOW(cshell), GTK_WIN_POS_MOUSE); + gtk_window_set_transient_for(GTK_WINDOW(cshell), GTK_WINDOW(pdialog->shell)); gtk_accel_group_attach(accel, GTK_OBJECT(cshell)); gtk_window_set_title(GTK_WINDOW(cshell), _("Change Production")); @@ -1928,6 +1931,8 @@ pdialog = (struct city_dialog *)data; if (pdialog->worklist_shell) { + gtk_window_set_transient_for(GTK_WINDOW(pdialog->worklist_shell), + GTK_WINDOW(pdialog->shell)); gtk_set_relative_position(pdialog->shell, pdialog->worklist_shell, 20, 20); gtk_widget_show(pdialog->worklist_shell); @@ -2162,6 +2167,7 @@ cityopt_city_id = pcity->id; + gtk_window_set_transient_for(GTK_WINDOW(cityopt_shell), GTK_WINDOW(pdialog->shell)); /* gtk_set_relative_position(toplevel, cityopt_shell, 15, 15);*/ gtk_widget_show(cityopt_shell); } diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/cityrep.c freeciv/client/gui-gtk/cityrep.c --- FreecivCVS/client/gui-gtk/cityrep.c Sat Apr 1 20:08:08 2000 +++ freeciv/client/gui-gtk/cityrep.c Sat Jul 22 09:15:24 2000 @@ -160,6 +160,8 @@ gtk_widget_set_sensitive(toplevel, FALSE); create_city_report_dialog(make_modal); + gtk_window_set_transient_for(GTK_WINDOW(city_dialog_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, city_dialog_shell, 10, 10); gtk_widget_show(city_dialog_shell); @@ -858,6 +860,8 @@ if (city_change_all_dialog_shell == NULL) { city_change_all_dialog_shell = gtk_dialog_new(); + gtk_window_set_transient_for(GTK_WINDOW(city_change_all_dialog_shell), + GTK_WINDOW(city_dialog_shell)); gtk_set_relative_position(city_dialog_shell, city_change_all_dialog_shell, 10, 10); @@ -1250,6 +1254,8 @@ city_report_specs[i].show); } + gtk_window_set_transient_for(GTK_WINDOW(config_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, config_shell, 25, 25); gtk_widget_show(config_shell); /* XtSetSensitive(main_form, FALSE); */ diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/connectdlg.c freeciv/client/gui-gtk/connectdlg.c --- FreecivCVS/client/gui-gtk/connectdlg.c Fri Jun 23 12:39:40 2000 +++ freeciv/client/gui-gtk/connectdlg.c Sat Jul 22 09:14:45 2000 @@ -246,7 +246,9 @@ gtk_widget_show_all(GTK_DIALOG(dialog)->vbox); gtk_widget_show_all(GTK_DIALOG(dialog)->action_area); - gtk_widget_set_usize(dialog, 450, 215); + gtk_window_set_default_size(GTK_WINDOW(dialog), 450, 215); + gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(toplevel)); + gtk_set_relative_position(toplevel, dialog, 50, 50); gtk_widget_show(dialog); } diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/dialogs.c freeciv/client/gui-gtk/dialogs.c --- FreecivCVS/client/gui-gtk/dialogs.c Wed Jun 28 09:50:12 2000 +++ freeciv/client/gui-gtk/dialogs.c Sat Jul 22 09:14:26 2000 @@ -218,7 +218,8 @@ gtk_widget_show_all( GTK_DIALOG(notify_dialog_shell)->vbox ); gtk_widget_show_all( GTK_DIALOG(notify_dialog_shell)->action_area ); - gtk_widget_set_usize(notify_dialog_shell, 0, 265); + gtk_window_set_default_size(GTK_WINDOW(notify_dialog_shell), 0, 265); + gtk_window_set_transient_for(GTK_WINDOW(notify_dialog_shell), GTK_WINDOW(toplevel)); gtk_set_relative_position (toplevel, notify_dialog_shell, 10, 10); gtk_widget_show( notify_dialog_shell ); @@ -342,6 +343,7 @@ GTK_SIGNAL_FUNC(notify_goto_command_callback), NULL); notify_goto_add_widget_coords(notify_goto_command, x, y); + gtk_window_set_transient_for(GTK_WINDOW(notify_dialog_shell), GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, notify_dialog_shell, 25, 25); gtk_widget_show_all( GTK_DIALOG(notify_dialog_shell)->vbox ); @@ -880,6 +882,7 @@ spy_tech_shell_is_modal=1; create_advances_list(game.player_ptr, pvictim, spy_tech_shell_is_modal); + gtk_window_set_transient_for(GTK_WINDOW(spy_tech_shell), GTK_WINDOW(toplevel)); gtk_set_relative_position (toplevel, spy_tech_shell, 10, 10); gtk_widget_show(spy_tech_shell); @@ -917,6 +920,7 @@ spy_sabotage_shell_is_modal=1; create_improvements_list(game.player_ptr, pcity, spy_sabotage_shell_is_modal); + gtk_window_set_transient_for(GTK_WINDOW(spy_sabotage_shell), GTK_WINDOW(toplevel)); gtk_set_relative_position (toplevel, spy_sabotage_shell, 10, 10); gtk_widget_show(spy_sabotage_shell); @@ -1550,6 +1554,7 @@ gtk_widget_set_sensitive(parent, FALSE); dshell=gtk_window_new(GTK_WINDOW_TOPLEVEL); + gtk_window_set_transient_for(GTK_WINDOW(dshell), GTK_WINDOW(parent)); gtk_window_set_position (GTK_WINDOW(dshell), GTK_WIN_POS_MOUSE); gtk_accel_group_attach(accel, GTK_OBJECT(dshell)); @@ -1760,7 +1765,9 @@ gtk_widget_show_all( GTK_DIALOG(unit_select_dialog_shell)->vbox ); gtk_widget_show_all( GTK_DIALOG(unit_select_dialog_shell)->action_area ); - gtk_set_relative_position(toplevel, unit_select_dialog_shell, 15, 10); + gtk_window_set_policy(GTK_WINDOW(unit_select_dialog_shell), FALSE, FALSE, TRUE); + gtk_window_set_transient_for(GTK_WINDOW(unit_select_dialog_shell), + GTK_WINDOW(toplevel)); gtk_widget_show(unit_select_dialog_shell); } } diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/diplodlg.c freeciv/client/gui-gtk/diplodlg.c --- FreecivCVS/client/gui-gtk/diplodlg.c Sat Jul 15 08:36:24 2000 +++ freeciv/client/gui-gtk/diplodlg.c Sat Jul 22 09:12:55 2000 @@ -187,6 +187,8 @@ if(!(pdialog=find_diplomacy_dialog(plr0, plr1))) { pdialog=create_diplomacy_dialog(plr0, plr1); + gtk_window_set_transient_for(GTK_WINDOW(pdialog->dip_dialog_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel,pdialog->dip_dialog_shell,0,0); } diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/finddlg.c freeciv/client/gui-gtk/finddlg.c --- FreecivCVS/client/gui-gtk/finddlg.c Tue Mar 21 09:02:12 2000 +++ freeciv/client/gui-gtk/finddlg.c Sat Jul 22 09:12:26 2000 @@ -122,6 +122,8 @@ GTK_SIGNAL_FUNC(find_list_callback), NULL); update_find_dialog(find_list); + gtk_window_set_transient_for(GTK_WINDOW(find_dialog_shell), + GTK_WINDOW(toplevel)); gtk_widget_show(find_dialog_shell); } diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/gamedlgs.c freeciv/client/gui-gtk/gamedlgs.c --- FreecivCVS/client/gui-gtk/gamedlgs.c Mon Jun 19 17:22:16 2000 +++ freeciv/client/gui-gtk/gamedlgs.c Sat Jul 22 09:11:42 2000 @@ -357,6 +357,8 @@ gtk_widget_set_sensitive(toplevel, FALSE ); create_rates_dialog(); + gtk_window_set_transient_for(GTK_WINDOW(rates_dialog_shell), + GTK_WINDOW(toplevel)); my_snprintf(buf, sizeof(buf), _("%s max rate: %d%%"), get_government_name(game.player_ptr->government), @@ -471,6 +473,8 @@ } } + gtk_window_set_transient_for(GTK_WINDOW(option_dialog_shell), + GTK_WINDOW(toplevel)); /* gtk_set_relative_position(toplevel, option_dialog_shell, 25, 25);*/ gtk_widget_show(option_dialog_shell); gtk_widget_set_sensitive(toplevel, FALSE); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/inputdlg.c freeciv/client/gui-gtk/inputdlg.c --- FreecivCVS/client/gui-gtk/inputdlg.c Fri Sep 17 22:55:53 1999 +++ freeciv/client/gui-gtk/inputdlg.c Sat Jul 22 09:10:54 2000 @@ -71,18 +71,18 @@ /**************************************************************** ... *****************************************************************/ -GtkWidget *input_dialog_create(GtkWidget *parent, char *dialogname, +GtkWidget *input_dialog_create(GtkWindow *parent, char *dialogname, char *text, char *postinputtest, void *ok_callback, gpointer ok_cli_data, void *cancel_callback, gpointer cancel_cli_data) { GtkWidget *shell, *label, *input, *ok, *cancel; - gtk_widget_set_sensitive(parent, FALSE); + gtk_widget_set_sensitive(GTK_WIDGET(parent), FALSE); shell=gtk_dialog_new(); gtk_signal_connect(GTK_OBJECT(shell),"delete_event", - GTK_SIGNAL_FUNC(input_dialog_del_callback), parent); + GTK_SIGNAL_FUNC(input_dialog_del_callback), GTK_WIDGET(parent)); gtk_window_set_title(GTK_WINDOW(shell), dialogname); @@ -112,10 +112,11 @@ gtk_widget_grab_focus(input); - gtk_set_relative_position(parent, shell, 10, 10); + gtk_window_set_transient_for(GTK_WINDOW(shell), parent); + gtk_set_relative_position(GTK_WIDGET(parent), shell, 10, 10); gtk_object_set_data(GTK_OBJECT(shell), "iinput",input); - gtk_object_set_data(GTK_OBJECT(shell), "parent",parent); + gtk_object_set_data(GTK_OBJECT(shell), "parent",GTK_WIDGET(parent)); gtk_widget_show_all(GTK_DIALOG(shell)->vbox); gtk_widget_show_all(GTK_DIALOG(shell)->action_area); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/inputdlg.h freeciv/client/gui-gtk/inputdlg.h --- FreecivCVS/client/gui-gtk/inputdlg.h Sat Jun 12 03:41:44 1999 +++ freeciv/client/gui-gtk/inputdlg.h Sat Jul 22 08:25:23 2000 @@ -15,7 +15,7 @@ #include -GtkWidget *input_dialog_create(GtkWidget *parent, char *dialogname, +GtkWidget *input_dialog_create(GtkWindow *parent, char *dialogname, char *text, char *postinputtest, void *ok_callback, gpointer ok_cli_data, void *cancel_callback, gpointer cancel_cli_data); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/inteldlg.c freeciv/client/gui-gtk/inteldlg.c --- FreecivCVS/client/gui-gtk/inteldlg.c Sun Jan 2 06:55:27 2000 +++ freeciv/client/gui-gtk/inteldlg.c Sat Jul 22 09:08:41 2000 @@ -53,6 +53,8 @@ { if(!intel_dialog_shell) { intel_create_dialog(p); + gtk_window_set_transient_for(GTK_WINDOW(intel_dialog_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, intel_dialog_shell, 25, 25); gtk_widget_show(intel_dialog_shell); gtk_widget_set_sensitive(toplevel, FALSE); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/mapctrl.c freeciv/client/gui-gtk/mapctrl.c --- FreecivCVS/client/gui-gtk/mapctrl.c Wed Jul 19 08:43:48 2000 +++ freeciv/client/gui-gtk/mapctrl.c Sat Jul 22 08:25:23 2000 @@ -79,7 +79,7 @@ **************************************************************************/ void popup_newcity_dialog(struct unit *punit, char *suggestname) { - input_dialog_create(toplevel, /*"shellnewcityname"*/_("Build New City"), + input_dialog_create(GTK_WINDOW(toplevel), /*"shellnewcityname"*/_("Build New City"), _("What should we call our new city?"), suggestname, name_new_city_callback, (gpointer)punit->id, diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/messagedlg.c freeciv/client/gui-gtk/messagedlg.c --- FreecivCVS/client/gui-gtk/messagedlg.c Fri Sep 17 22:55:54 1999 +++ freeciv/client/gui-gtk/messagedlg.c Sat Jul 22 09:07:13 2000 @@ -65,7 +65,8 @@ state); } } - + + gtk_window_set_transient_for(GTK_WINDOW(shell), GTK_WINDOW(toplevel)); /* gtk_set_relative_position(toplevel, shell, 15, 0);*/ gtk_window_set_position (GTK_WINDOW(shell), GTK_WIN_POS_MOUSE); gtk_widget_show(shell); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/messagewin.c freeciv/client/gui-gtk/messagewin.c --- FreecivCVS/client/gui-gtk/messagewin.c Sun Jul 9 21:49:04 2000 +++ freeciv/client/gui-gtk/messagewin.c Sat Jul 22 08:25:23 2000 @@ -131,6 +131,7 @@ if (!titles) titles = intl_slist(1, titles_); meswin_dialog_shell = gtk_dialog_new(); + gtk_window_set_wmclass(GTK_WINDOW(meswin_dialog_shell), g_get_prgname(), "message"); gtk_signal_connect( GTK_OBJECT(meswin_dialog_shell),"delete_event", GTK_SIGNAL_FUNC(meswin_close_callback),NULL ); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/plrdlg.c freeciv/client/gui-gtk/plrdlg.c --- FreecivCVS/client/gui-gtk/plrdlg.c Fri Jun 9 09:26:13 2000 +++ freeciv/client/gui-gtk/plrdlg.c Sat Jul 22 08:25:23 2000 @@ -69,6 +69,7 @@ { if(!players_dialog_shell){ create_players_dialog(); + gtk_window_set_wmclass(GTK_WINDOW(players_dialog_shell), g_get_prgname(), "players"); gtk_set_relative_position(toplevel, players_dialog_shell, 25, 25); gtk_widget_show(players_dialog_shell); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/repodlgs.c freeciv/client/gui-gtk/repodlgs.c --- FreecivCVS/client/gui-gtk/repodlgs.c Tue Jul 4 08:53:37 2000 +++ freeciv/client/gui-gtk/repodlgs.c Sat Jul 22 09:06:21 2000 @@ -158,6 +158,8 @@ gtk_widget_set_sensitive(toplevel, FALSE); create_science_dialog(make_modal); + gtk_window_set_transient_for(GTK_WINDOW(science_dialog_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, science_dialog_shell, 10, 10); gtk_widget_show( science_dialog_shell ); @@ -553,6 +555,8 @@ gtk_widget_set_sensitive(toplevel, FALSE); create_trade_report_dialog(make_modal); + gtk_window_set_transient_for(GTK_WINDOW(trade_dialog_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, trade_dialog_shell, 10, 10); gtk_widget_show(trade_dialog_shell); @@ -817,6 +821,8 @@ gtk_widget_set_sensitive(toplevel, FALSE); create_activeunits_report_dialog(make_modal); + gtk_window_set_transient_for(GTK_WINDOW(activeunits_dialog_shell), + GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, activeunits_dialog_shell, 10, 10); gtk_widget_show(activeunits_dialog_shell); diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/spaceshipdlg.c freeciv/client/gui-gtk/spaceshipdlg.c --- FreecivCVS/client/gui-gtk/spaceshipdlg.c Sat Mar 4 15:09:25 2000 +++ freeciv/client/gui-gtk/spaceshipdlg.c Sat Jul 22 09:08:18 2000 @@ -132,6 +132,7 @@ if(!(pdialog=get_spaceship_dialog(pplayer))) pdialog=create_spaceship_dialog(pplayer); + gtk_window_set_transient_for(GTK_WINDOW(pdialog->shell), GTK_WINDOW(toplevel)); gtk_set_relative_position(toplevel, pdialog->shell, 10, 10); gtk_widget_show(pdialog->shell); } diff -ru -X /home/jjm/cvs/no.freeciv FreecivCVS/client/gui-gtk/wldlg.c freeciv/client/gui-gtk/wldlg.c --- FreecivCVS/client/gui-gtk/wldlg.c Wed Jun 7 10:11:44 2000 +++ freeciv/client/gui-gtk/wldlg.c Sat Jul 22 09:01:52 2000 @@ -172,6 +172,7 @@ gtk_window_set_title(GTK_WINDOW(wshell), _("Edit worklists")); + gtk_window_set_wmclass(GTK_WINDOW(wshell), g_get_prgname(), "worklist"); gtk_window_set_position(GTK_WINDOW(wshell), GTK_WIN_POS_MOUSE); gtk_accel_group_attach(accel, GTK_OBJECT(wshell)); @@ -316,6 +317,7 @@ gtk_window_set_title(GTK_WINDOW(wshell), _("Production worklist")); + gtk_window_set_transient_for(GTK_WINDOW(wshell), GTK_WINDOW(parent)); gtk_set_relative_position(parent, wshell, 20, 20); gtk_accel_group_attach(accel, GTK_OBJECT(wshell)); @@ -537,7 +539,7 @@ pdialog->wl_idx = (int)selection->data; - input_dialog_create(worklist_report_shell, + input_dialog_create(GTK_WINDOW(worklist_report_shell), _("Rename Worklist"), _("What should the new name be?"), pdialog->pplr->worklists[pdialog->wl_idx].name,