4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
10 * Full author contact details are available in file CREDITS.
13 #ifndef FORMGRAPHICS_H
14 #define FORMGRAPHICS_H
16 #include "FormDialogView.h"
17 #include <boost/scoped_ptr.hpp>
24 class ControlGraphics;
26 struct FD_graphics_file;
27 struct FD_graphics_bbox;
28 struct FD_graphics_extra;
30 /** This class provides an XForms implementation of the Graphics Dialog.
33 : public FormController<ControlGraphics, FormView<FD_graphics> > {
36 FormGraphics(Dialog &);
39 /** Redraw the form (on receipt of a Signal indicating, for example,
40 that the xforms colours have been re-mapped). */
41 virtual void redraw();
42 /// Set the Params variable for the Controller.
46 /// Update dialog before/whilst showing it.
47 virtual void update();
48 /// Update the BoundingBox info.
49 void updateBB(std::string const & filename, std::string const & bb_inset);
50 /// Filter the inputs on callback from xforms
51 virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
53 // Accessor to checker owned by the button controller.
54 CheckedPath * file_checker_;
56 /// Real GUI implementation.
57 boost::scoped_ptr<FD_graphics_file> file_;
59 boost::scoped_ptr<FD_graphics_bbox> bbox_;
61 boost::scoped_ptr<FD_graphics_extra> extra_;
63 /// Store the LaTeX names for the rotation origins.
64 std::vector<std::string> origins_;
67 } // namespace frontend
70 #endif // FORMGRAPHICS_H