]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/controllers/ControlDocument.h
fix crash due to invalidated iterator
[lyx.git] / src / frontends / controllers / ControlDocument.h
index 6b2e3ac592e0550ed24fe8029a1b366f2192d7e3..bde75914ff10f5febf5efb29a71b4e00475dbe20 100644 (file)
 #ifndef CONTROLDOCUMENT_H
 #define CONTROLDOCUMENT_H
 
-
+#include "Dialog.h"
+#include "support/types.h"
 #include <boost/scoped_ptr.hpp>
-#include "ControlDialog_impl.h"
-#include "support/std_string.h"
-#include "bufferparams.h"
-
-#include <vector>
 
-class Language;
+class BufferParams;
+class LyXTextClass;
 
+namespace lyx {
+namespace frontend {
 
 /** A controller for Document dialogs.
  */
-class ControlDocument : public ControlDialogBD {
+class ControlDocument : public Dialog::Controller {
 public:
        ///
-       ControlDocument(LyXView &, Dialogs &);
+       ControlDocument(Dialog &);
        ///
        ~ControlDocument();
        ///
-       void setLanguage();
+       virtual bool initialiseParams(std::string const & data);
+       ///
+       virtual void clearParams();
        ///
-       LyXTextClass textClass();
+       virtual void dispatchParams();
        ///
-       BufferParams & params();
+       virtual bool isBufferDependent() const { return true; }
+       /// always true since we don't manipulate document contents
+       virtual bool canApply() const { return true; }
        ///
-       void saveAsDefault();
+       LyXTextClass const & textClass() const;
        ///
-       void classApply();
+       BufferParams & params() const;
        ///
-       bool loadTextclass(lyx::textclass_type tc) const;
+       void setLanguage() const;
+       ///
+       void saveAsDefault() const;
+       ///
+       bool loadTextclass(textclass_type tc) const;
 private:
-       /// apply settings
-       void apply();
-       /// set the params before show or update
-       void setParams();
        ///
        boost::scoped_ptr<BufferParams> bp_;
 };
 
+} // namespace frontend
+} // namespace lyx
+
 #endif // CONTROLDOCUMENT_H