3 * \file ControlExternal.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Asger Alstrup
9 * \author Angus Leeming
11 * Full author contact details are available in file CREDITS.
14 #ifndef CONTROLEXTERNAL_H
15 #define CONTROLEXTERNAL_H
19 #include "support/types.h"
21 #include <boost/scoped_ptr.hpp>
27 class InsetExternalParams;
34 class RotationDataType;
36 } // namespace external
41 class ControlExternal : public Dialog::Controller {
44 ControlExternal(Dialog &);
46 virtual bool initialiseParams(std::string const & data);
48 virtual void clearParams();
50 virtual void dispatchParams();
52 virtual bool isBufferDependent() const { return true; }
55 InsetExternalParams const & params() const;
57 void setParams(InsetExternalParams const &);
62 std::vector<std::string> const getTemplates() const;
64 int getTemplateNumber(std::string const &) const;
66 external::Template getTemplate(int) const;
69 getTemplateFilters(std::string const & template_name) const;
71 std::string const browse(std::string const & input_file,
72 std::string const & template_name) const;
74 /// Read the Bounding Box from a eps or ps-file
75 std::string const readBB(std::string const & file);
77 void bbChanged(bool val) { bb_changed_ = val; }
78 bool bbChanged() const { return bb_changed_; }
81 boost::scoped_ptr<InsetExternalParams> params_;
85 } // namespace frontend
90 std::vector<RotationDataType> const & all_origins();
91 std::string const origin_gui_str(size_type i);
93 } // namespace external
96 #endif // CONTROLEXTERNAL_H