]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/NoGuiFontMetrics.h
Embedding: add embedCB checkboxes to IncludeUi and ExternalUi
[lyx.git] / src / frontends / NoGuiFontMetrics.h
index 5faaf685f805dbbca47f7e6c19b5a355e98184ba..e6d92cd932af521e411764eec1ff8af23fb9cc1b 100644 (file)
@@ -14,7 +14,9 @@
 
 #include "frontends/FontMetrics.h"
 
-#include "support/docstring.h"
+#include "Dimension.h"
+
+#include "support/strfwd.h"
 
 namespace lyx {
 namespace frontend {
@@ -30,29 +32,33 @@ public:
        virtual int maxAscent() const { return 1; }
 
        virtual int maxDescent() const { return 1; }
-       
+
+       virtual Dimension const defaultDimension() const { return Dimension(1, 1, 1); }
+
        virtual int width(char_type) const { return 1; }
 
        virtual int ascent(char_type) const { return 1; }
-       
+
        int descent(char_type) const { return 1; }
-       
+
        virtual int lbearing(char_type) const { return 1; }
-       
+
        virtual int rbearing(char_type) const { return 1; }
-       
-       virtual int width(char_type const *, size_t n) const { return n; }
-       
+
+       virtual int width(docstring const & s) const { return s.size(); }
+
        virtual int signedWidth(docstring const & s) const
        {
                if (s.size() && s[0] == '-')
-                       return -FontMetrics::width(s.substr(1, s.length() - 1));
-               return FontMetrics::width(s);
+                       return -width(s.substr(1, s.length() - 1));
+               return width(s);
        }
-       
+
+       virtual Dimension const dimension(char_type) const { return Dimension(1, 1, 1); }
+
        virtual void rectText(docstring const &,
                int & /*width*/, int & /*ascent*/, int & /*descent*/) const {}
-       
+
        virtual void buttonText(docstring const &,
                int & /*width*/, int & /*ascent*/, int & /*descent*/) const {}
 };