]> git.lyx.org Git - lyx.git/blobdiff - src/dimension.h
cleanup some debug messages
[lyx.git] / src / dimension.h
index 7fe34b34d6a9f08f2fd7b719c3a206f1bd63ebc4..8bca47a93d1648b910fc696c7e864afc281d4456 100644 (file)
@@ -1,14 +1,12 @@
 // -*- C++ -*-
-
 /**
- *  \file dimension.h
- *
- *  This file is part of LyX, the document processor.
- *  Licence details can be found in the file COPYING.
+ * \file dimension.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- *  \author André Pönitz
+ * \author André Pönitz
  *
- *  Full author contact details are available in file CREDITS.
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef DIMENSION_H
 class LyXFont;
 
 /// Simple wrapper around three ints
-struct Dimension {
+class Dimension {
 public:
        /// constructor
-       Dimension() : w(0), a(0), d(0) {}
+       Dimension() : wid(0), asc(0), des(0) {}
        /// initialize data
-       Dimension(int ww, int aa, int dd) : w(ww), a(aa), d(dd) {}
+       Dimension(int w, int a, int d) : wid(w), asc(a), des(d) {}
 
        /// glue horizontally
        void operator+=(Dimension const & dim);
        /// set to empty box
-       void clear() { w = a = d = 0; }
+       void clear() { wid = asc = des = 0; }
        /// set to empty box suitble for given font
        void clear(LyXFont const & font);
        /// get height
-       int height() const { return a + d; }
+       int height() const { return asc + des; }
        /// get ascent
-       int ascent() const { return a; }
+       int ascent() const { return asc; }
        /// get descent
-       int descent() const { return d; }
+       int descent() const { return des; }
        /// get width
-       int width() const { return w; }
+       int width() const { return wid; }
+
+       /// add space for a frame
+       //void addFrame(int frame) const;
+       /// add space for bottom part of a frame
+       //void addFrameBottom(int frame) const;
 
 public:
        /// these are intentionally public as things like
        ///
-       ///   dim.a += 20; 
+       ///   dim.asc += 20;
        ///
        /// are used all over the place and "hiding" those behind
        ///
@@ -51,11 +54,17 @@ public:
        ///
        /// makes the code neither faster nor clearer
        /// width
-       int w;
+       int wid;
        /// ascent
-       int a;
+       int asc;
        /// descent
-       int d;
+       int des;
 };
 
+inline
+bool operator==(Dimension const & a, Dimension const & b)
+{
+       return a.wid == b.wid && a.asc == b.asc && a.des ==b.des ;
+}
+
 #endif