3 * \file InsetGraphicsParams.h
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 INSETGRAPHICSPARAMS_H
14 #define INSETGRAPHICSPARAMS_H
17 #include "graphics/GraphicsParams.h"
19 #include "support/FileName.h"
25 namespace graphics { class Params; }
31 /// This class holds all the parameters needed by insetGraphics.
32 class InsetGraphicsParams
36 support::DocFileName filename;
37 /// Scaling the Screen inside Lyx
38 unsigned int lyxscale;
39 /// If to display the image inside LyX
41 /// Scaling for output (LaTeX)
43 /// sizes for output (LaTeX)
47 /// Keep the ratio between height and width when resizing.
51 /// scale image before rotating
52 bool scaleBeforeRotation;
55 graphics::BoundingBox bbox;
60 std::string rotateAngle;
61 /// Origin point of rotation
62 std::string rotateOrigin;
63 /// any userdefined special command
67 InsetGraphicsParams();
69 InsetGraphicsParams(InsetGraphicsParams const &);
71 void operator=(InsetGraphicsParams const &);
72 /// Save the parameters in the LyX format stream.
73 /// Buffer is needed to figure out if a figure is embedded.
74 void Write(std::ostream & os, Buffer const & buf) const;
75 /// If the token belongs to our parameters, read it.
76 bool Read(Lexer & lex, std::string const & token, std::string const & bufpath);
78 // Only a subset of InsetGraphicsParams is needed for display purposes.
79 // This function also interrogates lyxrc to ascertain whether
81 graphics::Params as_grfxParams() const;
83 // FIXME UNICODE. Write functions need to use odostream instead of ostream firstly.
84 /// Identification of the graphics template. No template equals empty string.
87 /// Initialize the object to a default status.
89 /// Copy the other objects content to us, used in copy c-tor and assignment
90 void copy(InsetGraphicsParams const & params);
94 bool operator==(InsetGraphicsParams const &, InsetGraphicsParams const &);
96 bool operator!=(InsetGraphicsParams const &, InsetGraphicsParams const &);