Index: client/gui-gtk/helpdlg.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/gui-gtk/helpdlg.c,v retrieving revision 1.28 diff -r1.28 helpdlg.c 121a122,127 > /**************************************************************** > ... > *****************************************************************/ > int popup_help_dialog_active(void) { > return help_dialog_shell?1:0; > } 338c344 < style->fg[GTK_STATE_NORMAL] = *colors_standard[COLOR_STD_RED]; --- > /*style->fg[GTK_STATE_NORMAL] = *colors_standard[COLOR_STD_RED];*/ Index: client/gui-gtk/repodlgs.c =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/gui-gtk/repodlgs.c,v retrieving revision 1.23 diff -r1.23 repodlgs.c 51,54c51,55 < void science_close_callback(GtkWidget *widget, gpointer data); < void science_help_callback(GtkWidget *w, gint row, gint column); < void science_change_callback(GtkWidget *widget, gpointer data); < void science_goal_callback(GtkWidget *widget, gpointer data); --- > static void science_close_callback(GtkWidget *widget, gpointer data); > static void science_help_callback(GtkWidget *w, gint row, gint column); > static void science_help_button_callback(GtkWidget * w); > static void science_change_callback(GtkWidget *widget, gpointer data); > static void science_goal_callback(GtkWidget *widget, gpointer data); 62c63 < GtkWidget *science_list, *science_help_toggle; --- > GtkWidget *science_list, *science_help_button; 210,211c211,212 < science_help_toggle = gtk_check_button_new_with_label (_("Help")); < gtk_box_pack_start( GTK_BOX( hbox ), science_help_toggle, TRUE, FALSE, 0 ); --- > w = gtk_label_new(""); > gtk_box_pack_start(GTK_BOX(hbox), w, TRUE, FALSE, 0); 230,231c231,232 < w = gtk_label_new(""); < gtk_box_pack_start( GTK_BOX( hbox ), w,TRUE, FALSE, 0 ); --- > science_help_button = gtk_button_new_with_label(_("Help")); > gtk_box_pack_start(GTK_BOX(hbox), science_help_button, TRUE, FALSE, 0); 248a250,252 > gtk_signal_connect(GTK_OBJECT(science_help_button), "clicked", > GTK_SIGNAL_FUNC(science_help_button_callback), NULL); > 264c268 < void science_change_callback(GtkWidget *widget, gpointer data) --- > void science_change_callback(GtkWidget * widget, gpointer data) 270c274 < to=(size_t)data; --- > to = (size_t) data; 272,282c276,277 < if (GTK_TOGGLE_BUTTON(science_help_toggle)->active) { < popup_help_dialog_typed(advances[to].name, HELP_TECH); < /* Following is to make the menu go back to the current research; < * there may be a better way to do this? --dwp */ < science_dialog_update(); < } < else { < my_snprintf(text, sizeof(text), "%d/%d", < game.player_ptr->research.researched, < research_time(game.player_ptr)); < gtk_set_label(science_current_label,text); --- > if (popup_help_dialog_active()) > popup_help_dialog_typed(advances[to].name, HELP_TECH); 284,286c279,286 < packet.tech=to; < send_packet_player_request(&aconnection, &packet, PACKET_PLAYER_RESEARCH); < } --- > my_snprintf(text, sizeof(text), > "%d/%d", > game.player_ptr->research.researched, > research_time(game.player_ptr)); > gtk_set_label(science_current_label, text); > > packet.tech = to; > send_packet_player_request(&aconnection, &packet, PACKET_PLAYER_RESEARCH); 292c292 < void science_goal_callback(GtkWidget *widget, gpointer data) --- > void science_goal_callback(GtkWidget * widget, gpointer data) 298c298 < to=(size_t)data; --- > to = (size_t) data; 300c300 < if (GTK_TOGGLE_BUTTON(science_help_toggle)->active) { --- > if (popup_help_dialog_active()) 302,309d301 < /* Following is to make the menu go back to the current goal; < * there may be a better way to do this? --dwp */ < science_dialog_update(); < } < else { < my_snprintf(text, sizeof(text), _("(%d steps)"), < tech_goal_turns(game.player_ptr, to)); < gtk_set_label(science_goal_label,text); 311,313c303,307 < packet.tech=to; < send_packet_player_request(&aconnection, &packet, PACKET_PLAYER_TECH_GOAL); < } --- > my_snprintf(text, sizeof(text), _("(%d steps)"), > tech_goal_turns(game.player_ptr, to)); > gtk_set_label(science_goal_label, text); > packet.tech = to; > send_packet_player_request(&aconnection, &packet, PACKET_PLAYER_TECH_GOAL); 329c323 < ... --- > opens help dialog to current goal 330a325,331 > void science_help_button_callback(GtkWidget * w) > { > GtkWidget *m = gtk_option_menu_get_menu(GTK_OPTION_MENU(science_goal_menu_button)); > GtkWidget *a = gtk_menu_get_active(GTK_MENU(m)); > gchar *s = gtk_widget_get_name(a); > popup_help_dialog_typed(s, HELP_TECH); > } 331a333,335 > /**************************************************************** > ... > *****************************************************************/ 338,344c342,345 < if (GTK_TOGGLE_BUTTON(science_help_toggle)->active) < { < if (*s != '\0') < popup_help_dialog_typed(s, HELP_TECH); < else < popup_help_dialog_string(HELP_TECHS_ITEM); < } --- > if (*s != '\0') > popup_help_dialog_typed(s, HELP_TECH); > else > popup_help_dialog_string(HELP_TECHS_ITEM); 394,396c395,399 < my_snprintf(text, sizeof(text), "%d/%d", < game.player_ptr->research.researched, < research_time(game.player_ptr)); --- > my_snprintf(text, sizeof(text), > "%d/%d", > game.player_ptr->research.researched, > research_time(game.player_ptr)); > 454a458 > gtk_widget_set_name(item, advances[i].name); Index: client/include/helpdlg_g.h =================================================================== RCS file: /home/freeciv/CVS/freeciv/client/include/helpdlg_g.h,v retrieving revision 1.5 diff -r1.5 helpdlg_g.h 19a20 > int popup_help_dialog_active(void);