]> git.lyx.org Git - lyx.git/blobdiff - src/PainterBase.C
J�rgen Spitzm�ller's tweak of the Paragraph dialog.
[lyx.git] / src / PainterBase.C
index f499e0be4d62ccc7985c787ded00d1d9de1f7a6e..1c5e21473f9858e1a745a77a8c8ba5ceedb4cff3 100644 (file)
@@ -3,7 +3,7 @@
  * 
  *           LyX, The Document Processor
  *      
- *         Copyright 1998-2000 The LyX Team
+ *         Copyright 1998-2001 The LyX Team
  *
  *======================================================*/
 
@@ -16,7 +16,7 @@
 #include "PainterBase.h"
 #include "lyxfont.h"
 #include "WorkArea.h"
-
+#include "font.h"
 
 int PainterBase::dummy1 = 0;
 int PainterBase::dummy2 = 0;
@@ -34,21 +34,9 @@ int PainterBase::paperWidth() const
 }
 
 
-int PainterBase::width(string const & s, LyXFont const & f) const
+int PainterBase::paperHeight() const
 {
-       return f.stringWidth(s);
-}
-
-
-int PainterBase::width(char const * s, int l, LyXFont const & f) const
-{
-       return f.textWidth(s, l);
-}
-
-
-int PainterBase::width(char c, LyXFont const & f) const
-{
-       return f.width(c);
+       return owner.height();
 }
 
 
@@ -106,35 +94,30 @@ PainterBase & PainterBase::rectText(int x, int baseline,
                                    string const & str, 
                                    LyXFont const & font,
                                    LColor::color back,
-                                   LColor::color frame, bool draw,
-                                   int & width, int & ascent, int & descent)
+                                   LColor::color frame)
 {
-       static int const d = 2;
-       width = this->width(str, font) + d * 2 + 2;
-       ascent = font.maxAscent() + d;
-       descent = font.maxDescent() + d;
-
-       if (!draw) return *this;
-
+       int width;
+       int ascent;
+       int descent;
+       
+       lyxfont::rectText(str, font, width, ascent, descent);
        rectangle(x, baseline - ascent, width, ascent + descent, frame);
        fillRectangle(x + 1, baseline - ascent + 1, width - 1, 
                      ascent + descent - 1, back);
-       text(x + d, baseline, str, font);
+       text(x + 3, baseline, str, font);
        return *this;
 }
 
 
 PainterBase & PainterBase::buttonText(int x, int baseline,
                                      string const & str, 
-                                     LyXFont const & font, bool draw,
-                                     int & width, int & ascent, int & descent)
+                                     LyXFont const & font)
 {
-       width = this->width(str, font) + 8;
-       ascent = font.maxAscent() + 3;
-       descent = font.maxDescent() + 3;
-
-       if (!draw) return *this;
-
+       int width;
+       int ascent;
+       int descent;
+       
+       lyxfont::buttonText(str, font, width, ascent, descent);
        button(x, baseline - ascent, width, descent + ascent);
        text(x + 4, baseline, str, font);
        return *this;