]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetTabular.cpp
InsetTabular.cpp: fix #6585 also for wrapped floats - thanks Vincent
[lyx.git] / src / insets / InsetTabular.cpp
index c5e8b0da975c2ccf5126a55e7fa6a705808658d8..39819a3cd211ad52002956027946e2feff89e203 100644 (file)
@@ -580,7 +580,7 @@ Tabular::CellData::CellData(CellData const & cs)
          rotate(cs.rotate),
          align_special(cs.align_special),
          p_width(cs.p_width),
-         inset(dynamic_cast<InsetTableCell *>(cs.inset->clone()))
+         inset(static_cast<InsetTableCell *>(cs.inset->clone()))
 {
 }
 
@@ -2201,7 +2201,6 @@ int Tabular::TeXCellPreamble(odocstream & os, idx_type cell,
                        os << from_ascii(getPWidth(cell).asLatexString());
                else
                        // we need to set a default value
-                       // needs to be discussed
                        os << "*";
                os << "}{";
        } // end if ismultirow
@@ -4314,6 +4313,10 @@ bool InsetTabular::getStatus(Cursor & cur, FuncRequest const & cmd,
                        break;
 
                case Tabular::SET_LONGTABULAR:
+                       // setting as longtable is not allowed when table is inside a float
+                       if (cur.innerInsetOfType(FLOAT_CODE) != 0
+                               || cur.innerInsetOfType(WRAP_CODE) != 0)
+                               status.setEnabled(false);
                        status.setOnOff(tabular.is_long_tabular);
                        break;