From 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d Mon Sep 17 00:00:00 2001 From: Jef Date: Tue, 24 Sep 2024 14:54:57 +0200 Subject: Initial community commit --- Src/Wasabi/api/util/selectfile.h | 41 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Src/Wasabi/api/util/selectfile.h (limited to 'Src/Wasabi/api/util/selectfile.h') diff --git a/Src/Wasabi/api/util/selectfile.h b/Src/Wasabi/api/util/selectfile.h new file mode 100644 index 00000000..5dc378a7 --- /dev/null +++ b/Src/Wasabi/api/util/selectfile.h @@ -0,0 +1,41 @@ +#ifndef _SELECTFILE_H +#define _SELECTFILE_H + +#include + +#include +#include + +class svc_fileSelector; +class ifc_window; + +class SelectFile +{ +public: + SelectFile(ifc_window *parent, const wchar_t *menu_prefix = NULL, const wchar_t *menu_suffix = NULL); + ~SelectFile(); + + void setDefaultDir(const wchar_t *dir); // default dir to use + const wchar_t *getDirectory(); // return base directory after ok clicked + void setIdent(const wchar_t *id); // unless you saved one under this id + + void setPopPosition(int x, int y); // in screen coords + + int runSelector(const wchar_t *type = NULL, int allow_multiple = FALSE, const wchar_t *extlist = NULL); // if NULL, generate popup + const wchar_t *getType(); + + int getNumFiles(); + const wchar_t *enumFilename(int n); + +private: + int xpos, ypos; + int pos_set; + ifc_window *parentWnd; + svc_fileSelector *svc; + PtrList types; + StringW prefix_str, suffix_str; + StringW default_dir, ident; + StringW saved_type; +}; + +#endif -- cgit