]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetgraphicsParams.h
Don't remove cell selections after fontchange.
[lyx.git] / src / insets / insetgraphicsParams.h
index 027b385ae4121ad176a34a5e7786a55d20bab11c..130e530646a10d7fe611887922295b4f79752c6b 100644 (file)
@@ -4,9 +4,10 @@
  * 
  *          LyX, The Document Processor
  *          Copyright 1995 Matthias Ettrich.
- *          Copyright 1995-2000 The LyX Team.
+ *          Copyright 1995-2002 The LyX Team.
  *
- *          This file Copyright 2000 Baruch Even
+ * \author Baruch Even
+ * \author Herbert Voss <voss@lyx.org>
  * ================================================= */
 
 #ifndef INSETGRAPHICSPARAMS_H
 
 #ifdef __GNUG__
 #pragma interface
-#endif
+#endif 
 
-#include <config.h>
 #include "LString.h"
 
 #include "buffer.h"
 #include "lyxlex.h"
 
-using std::ostream;
-
 /// This struct holds all the parameters needed by insetGraphics.
-struct InsetGraphicsParams {
-    /// Image filename.
-    string filename;
-    
-    /// How do we display the image?
-    enum DisplayType {
-        /// In full color range (if it's not in color we show it as it is)
-        COLOR,
-        /// In Grayscale (256 shades of gray).
-        GRAYSCALE,
-        /// In black and white.
-        MONOCHROME,
-        /// Don't display it on screen, only keep a frame in place.
-        NONE
-    };
-
-    /// How to display the image
-    DisplayType display;
-
-    /// Is the figure inlined? (not in a paragraph of its own).
-    bool inlineFigure;
-
-    /// Do we have a subcaption?
-    bool subcaption;
-
-    /// The text of the subcaption.
-    string subcaptionText;
-    
-       /// This is the different origins that the graphicx package support.
-       enum Origin {
-               DEFAULT,
-               LEFTTOP,
-               LEFTCENTER,
-               LEFTBASELINE,
-               LEFTBOTTOM,
-               CENTERTOP,
-               CENTER,
-               CENTERBASELINE,
-               CENTERBOTTOM,
-               RIGHTTOP,
-               RIGHTCENTER,
-               RIGHTBASELINE,
-               RIGHTBOTTOM,
-               REFERENCE_POINT = LEFTBASELINE
+struct InsetGraphicsParams
+{
+       /// How do we display the image?
+       enum DisplayType {
+           DEFAULT,            // whatever is in lyxrc.display_graphics
+           COLOR,              // full color range
+           GRAYSCALE,          // 256 shades of gray
+           MONOCHROME,         // In black and white.
+           NONE                // only keep a frame in place.
        };
-
-    /// The resize of the image, is it the default size, in cm, inch or
-    /// percentage of the page/column width/height
-    enum Resize {
-        DEFAULT_SIZE,
-        CM,
-        INCH,
-        PERCENT_PAGE,
-        PERCENT_COLUMN
-    };
-
-    
-    /// Keep the ratio between height and width when resizing.
-    bool keepAspectRatio;
-
-    // What width resize to do?
-    Resize widthResize;
-    // Value of width resize
-    float widthSize;
-    // What height resize to do?
-    Resize heightResize;
-    // Value of height resize
-    float heightSize;
-
-    // Origin point of rotation
-    Origin rotateOrigin;
-    // Rotation angle.
-    int rotateAngle;
-
-    InsetGraphicsParams();
-
-    InsetGraphicsParams(InsetGraphicsParams const &);
-    InsetGraphicsParams const & operator=(InsetGraphicsParams const &);
-
-    /// Save the parameters in the LyX format stream.
-    void Write(Buffer const * buf, ostream & os) const;
-    
-    /// If the token belongs to our parameters, read it.
-    bool Read(Buffer const * buf, LyXLex & lex, string const & token);
-    
-    /// Test the struct to make sure that all the options have legal values.
-    void testInvariant() const;
+       ///
+       enum sizeType {         // for latex and/or lyx
+           DEFAULT_SIZE,       // like none
+           WH,                 // width/height values
+           SCALE               // percentage value
+       };
+       /// Image filename.
+       string filename;
+       /// Do we have a subcaption?
+       bool subcaption;
+       /// The text of the subcaption.
+       string subcaptionText;
+       /// Do we rotate?
+       bool rotate;
+       /// Origin point of rotation
+       string rotateOrigin;
+       /// Rotation angle.
+       float rotateAngle;
+       /// clip image 
+       bool clip;
+       /// draft mode
+       bool draft;
+       /// what to do with zipped files
+       bool noUnzip;
+       /// The bounding box with "xLB yLB yRT yRT ", divided by a space!
+       string bb;
+       /// Type of rescaling 
+       sizeType size_type;
+       /// three possible values for rescaling (latex)
+       LyXLength width;
+       ///
+       LyXLength height;
+       ///
+       int scale;
+       /// Keep the ratio between height and width when resizing.
+       bool keepAspectRatio;
+       /// any userdefined special command
+       string special;
+       /// How to display the image inside lyx
+       DisplayType display;
+       /// the size for the view inside lyx
+       /// Typ of the LyXView, same as for latex
+       sizeType lyxsize_type;
+       LyXLength lyxwidth;
+       ///
+       LyXLength lyxheight;
+       /// Typ of rescaling the Screen inside lyx
+       int lyxscale;
+       ///
+       InsetGraphicsParams();
+       ///
+       InsetGraphicsParams(InsetGraphicsParams const &);
+       ///
+       InsetGraphicsParams & operator=(InsetGraphicsParams const &);
+       /// Save the parameters in the LyX format stream.
+       void Write(Buffer const * buf, std::ostream & os) const;
+       /// If the token belongs to our parameters, read it.
+       bool Read(Buffer const * buf, LyXLex & lex, string const & token);
 
 private:
-    /// Initialize the object to a default status.
-    void init();
-
-    /// Copy the other objects content to us, used in copy c-tor and assignment
-    void copy(InsetGraphicsParams const & params);
+       /// Initialize the object to a default status.
+       void init();
+       /// Copy the other objects content to us, used in copy c-tor and assignment
+       void copy(InsetGraphicsParams const & params);
 };
 
-bool operator==(InsetGraphicsParams const&, InsetGraphicsParams const &);
+///
+bool operator==(InsetGraphicsParams const &, InsetGraphicsParams const &);
+///
+bool operator!=(InsetGraphicsParams const &, InsetGraphicsParams const &);
 
-#endif
+#endif