class Dialogs;
+
+namespace lyx {
+
+namespace support {
+
+class FileFilterList;
+
+} // namespace support
+
+
+namespace frontend {
+
/// DirEntry internal structure definition
class DirEntry {
public:
class FD_filedialog;
+} // namespace frontend
+} // namespace lyx
+
+
class FileDialog::Private : public boost::signals::trackable {
public:
///
/// gets last dialog directory
std::string const GetDirectory() const;
/// launches dialog and returns selected file
- std::string const Select(std::string const & pszTitle = std::string(),
- std::string const & pszPath = std::string(),
- std::string const & pszMask = std::string(),
- std::string const & pszSuggested = std::string());
+ std::string const Select(std::string const & pszTitle,
+ std::string const & pszPath,
+ lyx::support::FileFilterList const & filters,
+ std::string const & pszSuggested);
/// launches dialog and returns selected directory
std::string const SelectDir(std::string const & pszTitle = std::string(),
std::string const & pszPath = std::string(),
private:
/// data
- static FD_filedialog * file_dlg_form_;
+ static lyx::frontend::FD_filedialog * file_dlg_form_;
///
static FileDialog::Private * current_dlg_;
///
///
std::string info_line_;
///
- typedef std::vector<DirEntry> DirEntries;
+ typedef std::vector<lyx::frontend::DirEntry> DirEntries;
///
DirEntries dir_entries_;
///
/// sets dialog current directory
void SetDirectory(std::string const & pszPath);
/// sets dialog file mask
- void SetMask(std::string const & pszNewMask);
+ void SetFilters(std::string const & filters);
+ void SetFilters(lyx::support::FileFilterList const & filters);
/// sets dialog information line
void SetInfoLine(std::string const & pszLine);
/// handle dialog during file selection