mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-03-28 09:17:07 -05:00
dialog.c: give ctrl->fileselect.filter an opaque type.
The values of that field in a Control structure are already platform-dependent: you're only supposed to set them in cross-platform code by using #defined names that each platform will define differently. Now I need the _type_ as well as the values to be opaque, because I'm about to make a change on Windows that turns it into a wide character string instead of a char string.
This commit is contained in:
parent
e1c6f61985
commit
1adcb200f7
4
dialog.c
4
dialog.c
@ -392,8 +392,8 @@ dlgcontrol *ctrl_draglist(struct controlset *s, const char *label,
|
||||
}
|
||||
|
||||
dlgcontrol *ctrl_filesel(struct controlset *s, const char *label,
|
||||
char shortcut, const char *filter, bool write,
|
||||
const char *title, HelpCtx helpctx,
|
||||
char shortcut, FILESELECT_FILTER_TYPE filter,
|
||||
bool write, const char *title, HelpCtx helpctx,
|
||||
handler_fn handler, intorptr context)
|
||||
{
|
||||
dlgcontrol *c = ctrl_new(s, CTRL_FILESELECT, helpctx, handler, context);
|
||||
|
6
dialog.h
6
dialog.h
@ -362,7 +362,7 @@ struct dlgcontrol {
|
||||
* particular platform might choose to cast integers into
|
||||
* this pointer type...
|
||||
*/
|
||||
char const *filter;
|
||||
FILESELECT_FILTER_TYPE filter;
|
||||
/*
|
||||
* Some systems like to know whether a file selector is
|
||||
* choosing a file to read or one to write (and possibly
|
||||
@ -552,8 +552,8 @@ dlgcontrol *ctrl_draglist(struct controlset *, const char *label,
|
||||
char shortcut, HelpCtx helpctx,
|
||||
handler_fn handler, intorptr context);
|
||||
dlgcontrol *ctrl_filesel(struct controlset *, const char *label,
|
||||
char shortcut, const char *filter, bool write,
|
||||
const char *title, HelpCtx helpctx,
|
||||
char shortcut, FILESELECT_FILTER_TYPE filter,
|
||||
bool write, const char *title, HelpCtx helpctx,
|
||||
handler_fn handler, intorptr context);
|
||||
dlgcontrol *ctrl_fontsel(struct controlset *, const char *label,
|
||||
char shortcut, HelpCtx helpctx,
|
||||
|
@ -81,6 +81,8 @@ extern const struct BackendVtable pty_backend;
|
||||
typedef void *HelpCtx;
|
||||
#define NULL_HELPCTX ((HelpCtx)NULL)
|
||||
#define HELPCTX(x) NULL
|
||||
|
||||
typedef const char *FILESELECT_FILTER_TYPE;
|
||||
#define FILTER_KEY_FILES NULL /* FIXME */
|
||||
#define FILTER_DYNLIB_FILES NULL /* FIXME */
|
||||
|
||||
|
@ -286,6 +286,7 @@ void write_aclip(HWND hwnd, int clipboard, char *, int);
|
||||
* these strings are of exactly the type needed to go in
|
||||
* `lpstrFilter' in an OPENFILENAME structure.
|
||||
*/
|
||||
typedef const char *FILESELECT_FILTER_TYPE;
|
||||
#define FILTER_KEY_FILES ("PuTTY Private Key Files (*.ppk)\0*.ppk\0" \
|
||||
"All Files (*.*)\0*\0\0\0")
|
||||
#define FILTER_WAVE_FILES ("Wave Files (*.wav)\0*.WAV\0" \
|
||||
|
Loading…
x
Reference in New Issue
Block a user