]> 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 fc36386bb63f2598d2a033b698c759e6e885cc2b..bde75914ff10f5febf5efb29a71b4e00475dbe20 100644 (file)
@@ -6,53 +6,56 @@
  *
  * \author Edwin Leuven
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef CONTROLDOCUMENT_H
 #define CONTROLDOCUMENT_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
+#include "Dialog.h"
+#include "support/types.h"
 #include <boost/scoped_ptr.hpp>
-#include "ControlDialog_impl.h"
-#include "LString.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();
-       /// show latex preamble
-       void showPreamble();
        ///
-       void setLanguage();
+       virtual bool initialiseParams(std::string const & data);
+       ///
+       virtual void clearParams();
+       ///
+       virtual void dispatchParams();
        ///
-       LyXTextClass textClass();
+       virtual bool isBufferDependent() const { return true; }
+       /// always true since we don't manipulate document contents
+       virtual bool canApply() const { return true; }
        ///
-       BufferParams & params();
+       LyXTextClass const & textClass() const;
        ///
-       void saveAsDefault();
+       BufferParams & params() const;
        ///
-       bool classApply();
+       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