*
* \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