1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00

Ability to save in mid-session! Simplest possible resolution to all

the difficult questions about when it's sensible to offer the option
of saving to the slot we loaded from: _we never do_. The user must
always explicitly specify a slot to save to.

[originally from svn r5035]
[this svn revision also touched putty-wishlist]
This commit is contained in:
Simon Tatham 2004-12-28 16:46:30 +00:00
parent 11655820ca
commit 340afa2733
2 changed files with 35 additions and 32 deletions

View File

@ -845,39 +845,42 @@ void setup_config_box(struct controlbox *b, struct sesslist *sesslist,
"SSH", 's', I(PROT_SSH),
NULL);
}
s = ctrl_getset(b, "Session", "savedsessions",
"Load, save or delete a stored session");
ctrl_columns(s, 2, 75, 25);
ssd->sesslist = sesslist;
ssd->editbox = ctrl_editbox(s, "Saved Sessions", 'e', 100,
HELPCTX(session_saved),
sessionsaver_handler, P(ssd), P(NULL));
ssd->editbox->generic.column = 0;
/* Reset columns so that the buttons are alongside the list, rather
* than alongside that edit box. */
ctrl_columns(s, 1, 100);
ctrl_columns(s, 2, 75, 25);
ssd->listbox = ctrl_listbox(s, NULL, NO_SHORTCUT,
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->listbox->generic.column = 0;
ssd->listbox->listbox.height = 7;
ssd->loadbutton = ctrl_pushbutton(s, "Load", 'l',
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->loadbutton->generic.column = 1;
ssd->savebutton = ctrl_pushbutton(s, "Save", 'v',
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->savebutton->generic.column = 1;
ssd->delbutton = ctrl_pushbutton(s, "Delete", 'd',
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->delbutton->generic.column = 1;
ctrl_columns(s, 1, 100);
}
/*
* The Load/Save panel is available even in mid-session.
*/
s = ctrl_getset(b, "Session", "savedsessions",
"Load, save or delete a stored session");
ctrl_columns(s, 2, 75, 25);
ssd->sesslist = sesslist;
ssd->editbox = ctrl_editbox(s, "Saved Sessions", 'e', 100,
HELPCTX(session_saved),
sessionsaver_handler, P(ssd), P(NULL));
ssd->editbox->generic.column = 0;
/* Reset columns so that the buttons are alongside the list, rather
* than alongside that edit box. */
ctrl_columns(s, 1, 100);
ctrl_columns(s, 2, 75, 25);
ssd->listbox = ctrl_listbox(s, NULL, NO_SHORTCUT,
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->listbox->generic.column = 0;
ssd->listbox->listbox.height = 7;
ssd->loadbutton = ctrl_pushbutton(s, "Load", 'l',
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->loadbutton->generic.column = 1;
ssd->savebutton = ctrl_pushbutton(s, "Save", 'v',
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->savebutton->generic.column = 1;
ssd->delbutton = ctrl_pushbutton(s, "Delete", 'd',
HELPCTX(session_saved),
sessionsaver_handler, P(ssd));
ssd->delbutton->generic.column = 1;
ctrl_columns(s, 1, 100);
s = ctrl_getset(b, "Session", "otheropts", NULL);
c = ctrl_radiobuttons(s, "Close window on exit:", 'w', 4,
HELPCTX(session_coe),

View File

@ -632,7 +632,7 @@ int do_reconfig(HWND hwnd)
backup_cfg = cfg; /* structure copy */
ctrlbox = ctrl_new_box();
setup_config_box(ctrlbox, NULL, TRUE, cfg.protocol);
setup_config_box(ctrlbox, &sesslist, TRUE, cfg.protocol);
win_setup_config_box(ctrlbox, &dp.hwnd, (help_path != NULL), TRUE);
dp_init(&dp);
winctrl_init(&ctrls_base);