]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/CommandInset.cpp
revert last patch. there's something wrong, possibly unrelated to this
[lyx.git] / src / mathed / CommandInset.cpp
index 303ca931cac57f294987b48a92003e797e5cdcbc..7c24458cf557dbab919f6d65ca3ed087de53193b 100644 (file)
 
 #include <sstream>
 
+using namespace std;
 
 namespace lyx {
 
-using std::auto_ptr;
-using std::string;
 
 CommandInset::CommandInset(docstring const & name)
        : InsetMathNest(2), name_(name), set_label_(false)
@@ -31,27 +30,25 @@ CommandInset::CommandInset(docstring const & name)
 }
 
 
-auto_ptr<InsetBase> CommandInset::doClone() const
+Inset * CommandInset::clone() const
 {
-       return auto_ptr<InsetBase>(new CommandInset(*this));
+       return new CommandInset(*this);
 }
 
 
-bool CommandInset::metrics(MetricsInfo & mi, Dimension & dim) const
+void CommandInset::metrics(MetricsInfo & mi, Dimension & dim) const
 {
        if (!set_label_) {
                set_label_ = true;
                button_.update(screenLabel(), true);
        }
        button_.metrics(mi, dim);
-       if (dim_ == dim)
-               return false;
-       dim_ = dim;
-       return true;
+       // Cache the inset dimension. 
+       setDimCache(mi, dim);
 }
 
 
-InsetBase * CommandInset::editXY(Cursor & cur, int /*x*/, int /*y*/)
+Inset * CommandInset::editXY(Cursor & cur, int /*x*/, int /*y*/)
 {
        edit(cur, true);
        return this;