Make the shadow bold offset configurable, after discovering that
[u/mdw/putty] / settings.c
index 98847de..71ae49e 100644 (file)
@@ -312,6 +312,8 @@ void save_settings(char *section, int do_host, Config * cfg)
     write_setting_i(sesskey, "StampUtmp", cfg->stamp_utmp);
     write_setting_i(sesskey, "LoginShell", cfg->login_shell);
     write_setting_i(sesskey, "ScrollbarOnLeft", cfg->scrollbar_on_left);
+    write_setting_s(sesskey, "BoldFont", cfg->boldfont);
+    write_setting_i(sesskey, "ShadowBoldOffset", cfg->shadowboldoffset);
     close_settings_w(sesskey);
 }
 
@@ -509,7 +511,16 @@ void load_settings(char *section, int do_host, Config * cfg)
            cfg->colours[i][2] = c2;
        }
     }
+#ifndef _WINDOWS
+    /* Non-raw cut and paste of line-drawing chars works badly on the
+     * current Unix stub implementation of the Unicode functions.
+     * So I'm going to temporarily set the default to raw mode so
+     * that the failure mode isn't quite so drastically horrid.
+     * When Unicode comes in, this can all be put right. */
+    gppi(sesskey, "RawCNP", 1, &cfg->rawcnp);
+#else
     gppi(sesskey, "RawCNP", 0, &cfg->rawcnp);
+#endif
     gppi(sesskey, "PasteRTF", 0, &cfg->rtf_paste);
     gppi(sesskey, "MouseIsXterm", 0, &cfg->mouse_is_xterm);
     gppi(sesskey, "RectSelect", 0, &cfg->rect_select);
@@ -598,6 +609,8 @@ void load_settings(char *section, int do_host, Config * cfg)
     gppi(sesskey, "StampUtmp", 1, &cfg->stamp_utmp);
     gppi(sesskey, "LoginShell", 1, &cfg->login_shell);
     gppi(sesskey, "ScrollbarOnLeft", 0, &cfg->scrollbar_on_left);
+    gpps(sesskey, "BoldFont", "", cfg->boldfont, sizeof(cfg->boldfont));
+    gppi(sesskey, "ShadowBoldOffset", -1, &cfg->shadowboldoffset);
 
     close_settings_r(sesskey);
 }