]> git.lyx.org Git - features.git/commitdiff
* src/insets/insetbase.h
authorGeorg Baum <Georg.Baum@post.rwth-aachen.de>
Sat, 18 Mar 2006 17:39:54 +0000 (17:39 +0000)
committerGeorg Baum <Georg.Baum@post.rwth-aachen.de>
Sat, 18 Mar 2006 17:39:54 +0000 (17:39 +0000)
* src/insets/insettext.h
(asTextInset): constify

* src/rowpainter.C
(RowPainter::paintInset): remove unneeded casts
(paintPar): ditto

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13420 a592a061-630c-0410-9148-cb99ea01b6c8

src/insets/insetbase.h
src/insets/insettext.h
src/rowpainter.C

index 448c2dab4b4ab22a08edffebab5bc1f66d7e6241..885c6356a05ae4fdb9f2ff65949bdaf9fc6d4db4 100644 (file)
@@ -220,7 +220,7 @@ public:
        /// does this contain text that can be change track marked in DVI?
        virtual bool canTrackChanges() const { return false; }
        /// is this inset based on the TextInset class?
-       virtual InsetText * asTextInset() const { return 0; }
+       virtual InsetText const * asTextInset() const { return 0; }
        /// return true if the inset should be removed automatically
        virtual bool autoDelete() const;
 
index 1e17937c45618145f5249fcf5fec0ff869d310b0..0307dcf788ef89254034e328db8d70d0fd3812f9 100644 (file)
@@ -59,7 +59,7 @@ public:
        ///
        bool canTrackChanges() const { return true; }
        ///
-       InsetText * asTextInset() const { return const_cast<InsetText *>(this); }
+       InsetText const * asTextInset() const { return this; }
        ///
        int latex(Buffer const &, std::ostream &,
                  OutputParams const &) const;
index b387a83ac3a947bffb022bfb0a205303dee5bc22..77a1ebd7b51631b230eefbf7cde7cda7874ed0b1 100644 (file)
@@ -164,10 +164,10 @@ void RowPainter::paintInset(pos_type const pos, LyXFont const & font)
        pi.ltr_pos = (text_.bidi.level(pos) % 2 == 0);
        pi.erased_ = erased_ || isDeletedText(par_, pos);
        theCoords.insets().add(inset, int(x_), yo_);
-       InsetBase * in = const_cast<InsetBase *>(inset);
+       InsetText const * const in = inset->asTextInset();
        // non-wide insets are painted completely. Recursive
        bool tmp = bv_.repaintAll();
-       if (!in->asTextInset() || !static_cast<InsetText*>(in)->Wide()) {
+       if (!in || !in->Wide()) {
                bv_.repaintAll(true);
                lyxerr[Debug::PAINTING] << endl << "Paint inset fully" << endl;
        }
@@ -812,12 +812,12 @@ void paintPar
 
                // If this is the only object on the row, we can make it wide
                for (pos_type i = rit->pos() ; i != rit->endpos(); ++i) {
-                       InsetBase* in 
-                           = const_cast<InsetBase*>(par.getInset(i));
-                       if (in && in->asTextInset()) {
-                               static_cast<InsetText*>(in)->Wide()
-                                   = in_inset_alone_on_row  &&
-                                       static_cast<InsetText*>(in)->Tall();
+                       InsetBase const * const in = par.getInset(i);
+                       if (in) {
+                               InsetText const * const t = in->asTextInset();
+                               if (t)
+                                       t->Wide() = in_inset_alone_on_row &&
+                                                   t->Tall();
                        }
                }