42 lines
1011 B
C
42 lines
1011 B
C
|
#ifndef _SELECTFILE_H
|
||
|
#define _SELECTFILE_H
|
||
|
|
||
|
#include <bfc/common.h>
|
||
|
|
||
|
#include <bfc/ptrlist.h>
|
||
|
#include <bfc/string/StringW.h>
|
||
|
|
||
|
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<StringW> types;
|
||
|
StringW prefix_str, suffix_str;
|
||
|
StringW default_dir, ident;
|
||
|
StringW saved_type;
|
||
|
};
|
||
|
|
||
|
#endif
|