Ctrl-Break now sends a Break signal (previously it was equivalent to Ctrl-C).
[sgt/putty] / unix / gtkdlg.c
index 0847431..0a870ca 100644 (file)
@@ -2081,14 +2081,8 @@ int do_config_box(const char *title, Config *cfg, int midsession,
     shortcut_add(&scs, label, 'g', SHORTCUT_TREE, tree);
     gtk_tree_set_view_mode(GTK_TREE(tree), GTK_TREE_VIEW_ITEM);
     gtk_tree_set_selection_mode(GTK_TREE(tree), GTK_SELECTION_BROWSE);
-    gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(treescroll),
-                                         tree);
-    gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(treescroll),
-                                  GTK_POLICY_NEVER,
-                                  GTK_POLICY_AUTOMATIC);
     gtk_signal_connect(GTK_OBJECT(tree), "focus",
                       GTK_SIGNAL_FUNC(tree_focus), &dp);
-    gtk_widget_show(tree);
     gtk_widget_show(treescroll);
     gtk_box_pack_start(GTK_BOX(vbox), treescroll, TRUE, TRUE, 0);
     panels = gtk_notebook_new();
@@ -2141,7 +2135,10 @@ int do_config_box(const char *title, Config *cfg, int midsession,
                        gtk_tree_item_set_subtree
                            (treeitemlevels[j-1],
                             GTK_WIDGET(treelevels[j-1]));
-                       gtk_tree_item_expand(treeitemlevels[j-1]);
+                        if (j < 2)
+                            gtk_tree_item_expand(treeitemlevels[j-1]);
+                        else
+                            gtk_tree_item_collapse(treeitemlevels[j-1]);
                    }
                    gtk_tree_append(treelevels[j-1], treeitem);
                } else {
@@ -2216,6 +2213,23 @@ int do_config_box(const char *title, Config *cfg, int midsession,
     dp.retval = 0;
     dp.window = window;
 
+    {
+       /* in gtkwin.c */
+       extern void set_window_icon(GtkWidget *window,
+                                   const char *const *const *icon,
+                                   int n_icon);
+       extern const char *const *const cfg_icon[];
+       extern const int n_cfg_icon;
+       set_window_icon(window, cfg_icon, n_cfg_icon);
+    }
+
+    gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(treescroll),
+                                         tree);
+    gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(treescroll),
+                                  GTK_POLICY_NEVER,
+                                  GTK_POLICY_AUTOMATIC);
+    gtk_widget_show(tree);
+
     gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
     gtk_widget_show(window);
 
@@ -2511,7 +2525,7 @@ static void licence_clicked(GtkButton *button, gpointer data)
     char *title;
 
     char *licence =
-       "Copyright 1997-2006 Simon Tatham.\n\n"
+       "Copyright 1997-2007 Simon Tatham.\n\n"
 
        "Portions copyright Robert de Bath, Joris van Rantwijk, Delian "
        "Delchev, Andreas Schultz, Jeroen Massar, Wez Furlong, Nicolas "
@@ -2592,7 +2606,7 @@ void about_box(void *window)
                       w, FALSE, FALSE, 5);
     gtk_widget_show(w);
 
-    w = gtk_label_new("Copyright 1997-2006 Simon Tatham. All rights reserved");
+    w = gtk_label_new("Copyright 1997-2007 Simon Tatham. All rights reserved");
     gtk_box_pack_start(GTK_BOX(GTK_DIALOG(aboutbox)->vbox),
                       w, FALSE, FALSE, 5);
     gtk_widget_show(w);
@@ -2696,7 +2710,7 @@ void eventlog_selection_get(GtkWidget *widget, GtkSelectionData *seldata,
     struct eventlog_stuff *es = (struct eventlog_stuff *)data;
 
     gtk_selection_data_set(seldata, seldata->target, 8,
-                           es->seldata, es->sellen);
+                           (unsigned char *)es->seldata, es->sellen);
 }
 
 gint eventlog_selection_clear(GtkWidget *widget, GdkEventSelection *seldata,