From 7f4968e626d4bc41141fb2e16505804ff8da7e0c Mon Sep 17 00:00:00 2001 From: simon Date: Sat, 28 Apr 2001 15:47:26 +0000 Subject: [PATCH] The bell overload times are now measured in milliseconds, although the config box still enters them in seconds (it allows fractions). git-svn-id: svn://svn.tartarus.org/sgt/putty@1089 cda61777-01e9-0310-a592-d414129be87e --- settings.c | 4 ++-- terminal.c | 4 ++-- windlg.c | 22 ++++++++++++++++++---- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/settings.c b/settings.c index 5cde21c7..256e2b2d 100644 --- a/settings.c +++ b/settings.c @@ -267,8 +267,8 @@ void load_settings (char *section, int do_host, Config *cfg) { sizeof(cfg->bell_wavefile)); gppi (sesskey, "BellOverload", 1, &cfg->bellovl); gppi (sesskey, "BellOverloadN", 5, &cfg->bellovl_n); - gppi (sesskey, "BellOverloadT", 2, &cfg->bellovl_t); - gppi (sesskey, "BellOverloadS", 5, &cfg->bellovl_s); + gppi (sesskey, "BellOverloadT", 2000, &cfg->bellovl_t); + gppi (sesskey, "BellOverloadS", 5000, &cfg->bellovl_s); gppi (sesskey, "ScrollbackLines", 200, &cfg->savelines); gppi (sesskey, "DECOriginMode", 0, &cfg->dec_om); gppi (sesskey, "AutoWrapMode", 1, &cfg->wrap_mode); diff --git a/terminal.c b/terminal.c index 731bc1fa..95bd89f6 100644 --- a/terminal.c +++ b/terminal.c @@ -906,7 +906,7 @@ void term_out(void) { * t seconds ago. */ while (beephead && - beephead->ticks < ticks - cfg.bellovl_t*1000) { + beephead->ticks < ticks - cfg.bellovl_t) { struct beeptime *tmp = beephead; beephead = tmp->next; sfree(tmp); @@ -916,7 +916,7 @@ void term_out(void) { } if (cfg.bellovl && beep_overloaded && - ticks-lastbeep >= cfg.bellovl_s * 1000) { + ticks-lastbeep >= cfg.bellovl_s) { /* * If we're currently overloaded and the * last beep was more than s seconds ago, diff --git a/windlg.c b/windlg.c index 95b48404..22683ac8 100644 --- a/windlg.c +++ b/windlg.c @@ -43,6 +43,20 @@ static void MyGetDlgItemInt (HWND hwnd, int id, int *result) { *result = n; } +static void MyGetDlgItemFlt (HWND hwnd, int id, int *result, int scale) { + char text[80]; + BOOL ok; + ok = GetDlgItemText (hwnd, id, text, sizeof(text)-1); + if (ok && text[0]) + *result = (int) (scale * atof(text)); +} + +static void MySetDlgItemFlt (HWND hwnd, int id, double value) { + char text[80]; + sprintf(text, "%g", value); + SetDlgItemText (hwnd, id, text); +} + static int CALLBACK LogProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { int i; @@ -585,8 +599,8 @@ static void init_dlg_ctrls(HWND hwnd) { SetDlgItemText (hwnd, IDC_BELL_WAVEEDIT, cfg.bell_wavefile); CheckDlgButton (hwnd, IDC_BELLOVL, cfg.bellovl); SetDlgItemInt (hwnd, IDC_BELLOVLN, cfg.bellovl_n, FALSE); - SetDlgItemInt (hwnd, IDC_BELLOVLT, cfg.bellovl_t, FALSE); - SetDlgItemInt (hwnd, IDC_BELLOVLS, cfg.bellovl_s, FALSE); + MySetDlgItemFlt (hwnd, IDC_BELLOVLT, cfg.bellovl_t / 1000.0); + MySetDlgItemFlt (hwnd, IDC_BELLOVLS, cfg.bellovl_s / 1000.0); CheckDlgButton (hwnd, IDC_BCE, cfg.bce); CheckDlgButton (hwnd, IDC_BLINKTEXT, cfg.blinktext); @@ -1727,11 +1741,11 @@ static int GenericMainDlgProc (HWND hwnd, UINT msg, break; case IDC_BELLOVLT: if (HIWORD(wParam) == EN_CHANGE) - MyGetDlgItemInt (hwnd, IDC_BELLOVLT, &cfg.bellovl_t); + MyGetDlgItemFlt (hwnd, IDC_BELLOVLT, &cfg.bellovl_t, 1000); break; case IDC_BELLOVLS: if (HIWORD(wParam) == EN_CHANGE) - MyGetDlgItemInt (hwnd, IDC_BELLOVLS, &cfg.bellovl_s); + MyGetDlgItemFlt (hwnd, IDC_BELLOVLS, &cfg.bellovl_s, 1000); break; case IDC_BLINKTEXT: if (HIWORD(wParam) == BN_CLICKED || -- 2.11.0