]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetquotes.C
prevent crash when inserting minipage in table cell,
[lyx.git] / src / insets / insetquotes.C
index 24f44ff4442aad1eed66df2907bcf048b047bbcc..425c89e0ab43fbc8b81708a821290e1ae4c52597 100644 (file)
 #include "support/LAssert.h"
 #include "support/lstrings.h"
 
+using namespace lyx::support;
+
 using std::ostream;
 using std::endl;
+using std::auto_ptr;
 
 namespace {
 
-// codes used to read/write quotes to LyX files
+/* codes used to read/write quotes to LyX files
+ * e    ``english''
+ * s    ''spanish''
+ * g    ,,german``
+ * p    ,,polish''
+ * f    <<french>>
+ * a    >>danish<<
+ */
+
 char const * const language_char = "esgpfa";
 char const * const side_char = "lr" ;
 char const * const times_char = "sd";
@@ -171,9 +182,9 @@ string const InsetQuotes::dispString(Language const * loclang) const
 }
 
 
-void InsetQuotes::dimension(BufferView *, LyXFont const & font,
-       Dimension & dim) const
+void InsetQuotes::metrics(MetricsInfo & mi, Dimension & dim) const
 {
+       LyXFont & font = mi.base.font;
        dim.asc = font_metrics::maxAscent(font);
        dim.des = font_metrics::maxDescent(font);
        dim.wid = 0;
@@ -187,6 +198,7 @@ void InsetQuotes::dimension(BufferView *, LyXFont const & font,
                else
                        dim.wid += font_metrics::width(',', font);
        }
+       dim_ = dim;
 }
 
 
@@ -243,7 +255,7 @@ int InsetQuotes::latex(Buffer const * buf, ostream & os,
 {
        // How do we get the local language here??
        lyx::pos_type curr_pos = parOwner()->getPositionOfInset(this);
-       lyx::Assert(curr_pos != -1);
+       Assert(curr_pos != -1);
 
 #warning FIXME. We _must_ find another way to get the language. (Lgb)
 #if 0
@@ -351,19 +363,13 @@ void InsetQuotes::validate(LaTeXFeatures & features) const
 }
 
 
-Inset * InsetQuotes::clone(Buffer const &) const
+auto_ptr<InsetBase> InsetQuotes::clone() const
 {
-       return new InsetQuotes(language_, side_, times_);
+       return auto_ptr<InsetBase>(new InsetQuotes(language_, side_, times_));
 }
 
 
-// Inset * InsetQuotes::clone(Buffer const &, bool) const
-// {
-//   return new InsetQuotes(language_, side_, times_);
-// }
-
-
-Inset::Code InsetQuotes::lyxCode() const
+InsetOld::Code InsetQuotes::lyxCode() const
 {
-  return Inset::QUOTE_CODE;
+  return InsetOld::QUOTE_CODE;
 }