]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/FileDialog.h
Consider class-provided citation engines
[lyx.git] / src / frontends / qt4 / FileDialog.h
index f5da6eb73e0e4506bfedd4fb5016f381a580275b..fe75b5bf1e97403be8e6f9b84646622cce2b1f88 100644 (file)
@@ -13,8 +13,6 @@
 #ifndef FILEDIALOG_H
 #define FILEDIALOG_H
 
-#include "FuncCode.h"
-
 #include <QString>
 
 #include <utility>
@@ -27,6 +25,9 @@ namespace lyx {
  */
 class FileDialog
 {
+       /// noncopyable
+       FileDialog(FileDialog const &);
+       void operator=(FileDialog const &);
 public:
        /// label, directory path button
        typedef std::pair<QString, QString> Button;
@@ -42,16 +43,12 @@ public:
 
        /**
         * Constructs a file dialog with title \param title.
-        * If \param a is \const LFUN_SELECT_FILE_SYNC then a value
-        * will be returned immediately upon performing a open(),
-        * otherwise a callback Dispatch() will be invoked with the filename as
-        * argument, of action \param a.
         *
         * Up to two optional extra buttons are allowed for specifying
         * additional directories in the navigation (an empty
         * directory is interpreted as FileName::getcwd())
         */
-       FileDialog(QString const & title, FuncCode a = LFUN_SELECT_FILE_SYNC);
+       FileDialog(QString const & title);
 
        ~FileDialog();
 
@@ -70,6 +67,11 @@ public:
        Result save(QString const & path, QStringList const & filters,
                          QString const & suggested = QString());
 
+       /// Also retrieve the selected filter (selectedFilter can be 0 if
+       /// that output is not needed).
+       Result save(QString const & path, QStringList const & filters,
+                   QString const & suggested, QString *selectedFilter);
+
 private:
        class Private;
        friend class Private;
@@ -78,8 +80,6 @@ private:
        /// the dialog title
        QString title_;
 
-       /// success action to perform if not synchronous
-       FuncCode success_;
 };
 
 } // namespace lyx