3 * \file ControlDocument.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef CONTROLDOCUMENT_H
13 #define CONTROLDOCUMENT_H
16 #include "support/types.h"
17 #include <boost/scoped_ptr.hpp>
25 /** A controller for Document dialogs.
27 class ControlDocument : public Dialog::Controller {
30 ControlDocument(Dialog &);
34 virtual bool initialiseParams(std::string const & data);
36 virtual void clearParams();
38 virtual void dispatchParams();
40 virtual bool isBufferDependent() const { return true; }
41 /// always true since we don't manipulate document contents
42 virtual bool canApply() const { return true; }
44 LyXTextClass const & textClass() const;
46 BufferParams & params() const;
48 void setLanguage() const;
50 void saveAsDefault() const;
52 bool loadTextclass(textclass_type tc) const;
55 boost::scoped_ptr<BufferParams> bp_;
58 } // namespace frontend
61 #endif // CONTROLDOCUMENT_H