X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=dialog.h;h=8daa3320c843533f1eb33160ec78bbe7774a7ff6;hb=4c31b113a6deb4894b640e4989ae9ef1f8063c0e;hp=a124e1abdd0adfefef5a53a3a3eeb7e40c3a9c36;hpb=cea3619ca95c0b76564111524dcff7c2855d1109;p=PuTTY.git diff --git a/dialog.h b/dialog.h index a124e1ab..8daa3320 100644 --- a/dialog.h +++ b/dialog.h @@ -282,6 +282,11 @@ union control { * Return even if it doesn't have the input focus. */ int isdefault; + /* + * Also, the reverse of this: a default cancel-type button, + * which is implicitly pressed when you hit Escape. + */ + int iscancel; } button; struct { STANDARD_PREFIX; @@ -300,9 +305,16 @@ union control { */ int draglist; /* - * If this is set, the list can have more than one element - * selected at a time. This is not guaranteed to work on a - * drop-down list, so don't try it! + * If this is non-zero, the list can have more than one + * element selected at a time. This is not guaranteed to + * work on a drop-down list, so don't try it! + * + * Different non-zero values request slightly different + * types of multi-selection (this may well be meaningful + * only in GTK, so everyone else can ignore it if they + * want). 1 means the list box expects to have individual + * items selected, whereas 2 means it expects the user to + * want to select a large contiguous range at a time. */ int multisel; /* @@ -575,8 +587,8 @@ void dlg_listbox_add(union control *ctrl, void *dlg, char const *text); * strings in any listbox then you MUST not assign them different * IDs and expect to get meaningful results back. */ -void dlg_listbox_addwithindex(union control *ctrl, void *dlg, - char const *text, int id); +void dlg_listbox_addwithid(union control *ctrl, void *dlg, + char const *text, int id); int dlg_listbox_getid(union control *ctrl, void *dlg, int index); /* dlg_listbox_index returns <0 if no single element is selected. */ int dlg_listbox_index(union control *ctrl, void *dlg); @@ -599,11 +611,12 @@ void dlg_update_done(union control *ctrl, void *dlg); */ void dlg_set_focus(union control *ctrl, void *dlg); /* - * Return the `ctrl' structure for the control that had the input - * focus before this one. This is NOT GUARANTEED to work on all - * platforms, so don't base any critical functionality on it! + * Return the `ctrl' structure for the most recent control that had + * the input focus apart from the one mentioned. This is NOT + * GUARANTEED to work on all platforms, so don't base any critical + * functionality on it! */ -union control *dlg_last_focused(void *dlg); +union control *dlg_last_focused(union control *ctrl, void *dlg); /* * During event processing, you might well want to give an error * indication to the user. dlg_beep() is a quick and easy generic