]> git.lyx.org Git - lyx.git/blobdiff - src/insets/RenderPreview.cpp
Fix text frame drawing.
[lyx.git] / src / insets / RenderPreview.cpp
index 91c9a5fab7632ec9f65b7ffc20ad1ba31e48a802..cba453df10b22872421260e7a02878bc58a68262 100644 (file)
@@ -39,7 +39,6 @@ namespace lyx {
 using support::FileName;
 
 using std::string;
-using std::auto_ptr;
 
 
 LyXRC_PreviewStatus RenderPreview::status()
@@ -62,9 +61,16 @@ RenderPreview::RenderPreview(RenderPreview const & other,
 {}
 
 
-auto_ptr<RenderBase> RenderPreview::clone(Inset const * inset) const
+RenderPreview::~RenderPreview()
 {
-       return auto_ptr<RenderBase>(new RenderPreview(*this, inset));
+       if (ploader_connection_.connected())
+               ploader_connection_.disconnect();
+}
+
+
+RenderBase * RenderPreview::clone(Inset const * inset) const
+{
+       return new RenderPreview(*this, inset);
 }
 
 
@@ -79,9 +85,9 @@ graphics::PreviewLoader & getPreviewLoader(Buffer const & buffer)
 
 docstring const statusMessage(BufferView const * bv, string const & snippet)
 {
-       BOOST_ASSERT(bv && bv->buffer());
+       BOOST_ASSERT(bv);
 
-       Buffer const & buffer = *bv->buffer();
+       Buffer const & buffer = bv->buffer();
        graphics::PreviewLoader const & loader = getPreviewLoader(buffer);
        graphics::PreviewLoader::Status const status = loader.status(snippet);
 
@@ -115,10 +121,10 @@ RenderPreview::getPreviewImage(Buffer const & buffer) const
 
 bool RenderPreview::metrics(MetricsInfo & mi, Dimension & dim) const
 {
-       BOOST_ASSERT(mi.base.bv && mi.base.bv->buffer());
+       BOOST_ASSERT(mi.base.bv);
 
        graphics::PreviewImage const * const pimage =
-               getPreviewImage(*mi.base.bv->buffer());
+               getPreviewImage(mi.base.bv->buffer());
 
        if (pimage) {
                dim.asc = pimage->ascent();
@@ -143,10 +149,10 @@ bool RenderPreview::metrics(MetricsInfo & mi, Dimension & dim) const
 
 void RenderPreview::draw(PainterInfo & pi, int x, int y) const
 {
-       BOOST_ASSERT(pi.base.bv && pi.base.bv->buffer());
+       BOOST_ASSERT(pi.base.bv);
 
        graphics::PreviewImage const * const pimage =
-               getPreviewImage(*pi.base.bv->buffer());
+               getPreviewImage(pi.base.bv->buffer());
        graphics::Image const * const image = pimage ? pimage->image() : 0;
 
        if (image) {