]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetTabular.cpp
Move the StartTag, EndTag, and CompTag classes into the html namespace.
[lyx.git] / src / insets / InsetTabular.cpp
index 52a091c071cd3571a887b013b348e1360795bd02..390b08eedcbab11c3f60b614546da66752471c5c 100644 (file)
@@ -2639,7 +2639,7 @@ docstring Tabular::xhtmlRow(XHTMLStream & xs, row_type row,
        docstring ret;
        idx_type cell = getFirstCellInRow(row);
 
-       xs << StartTag("tr");
+       xs << html::StartTag("tr");
        for (col_type j = 0; j < column_info.size(); ++j) {
                if (isPartOfMultiColumn(row, j))
                        continue;
@@ -2674,12 +2674,12 @@ docstring Tabular::xhtmlRow(XHTMLStream & xs, row_type row,
                if (isMultiColumn(cell))
                        attr << " colspan='" << columnSpan(cell) << "'";
 
-               xs << StartTag("td", attr.str());
+               xs << html::StartTag("td", attr.str());
                ret += cellInset(cell)->xhtml(xs, runparams);
-               xs << EndTag("td");
+               xs << html::EndTag("td");
                ++cell;
        }
-       xs << EndTag("tr");
+       xs << html::EndTag("tr");
        return ret;
 }
 
@@ -2690,13 +2690,13 @@ docstring Tabular::xhtml(XHTMLStream & xs, OutputParams const & runparams) const
        // It's unclear to me if we need to mess with the long table stuff. 
        // We can borrow that too from docbook, if so.
 
-       xs << StartTag("tbody");
+       xs << html::StartTag("tbody");
        for (row_type i = 0; i < row_info.size(); ++i) {
                if (isValidRow(i)) {
                        ret += xhtmlRow(xs, i, runparams);
                }
        }
-       xs << EndTag("tbody");
+       xs << html::EndTag("tbody");
        return ret;
 }
 
@@ -3391,6 +3391,7 @@ void InsetTabular::edit(Cursor & cur, bool front, EntryDirection)
                cur.pit() = 0;
                cur.pos() = cur.lastpos(); // FIXME crude guess
        }
+       cur.setCurrentFont();
        // FIXME: this accesses the position cache before it is initialized
        //resetPos(cur);
        //cur.bv().fitCursor();
@@ -3641,6 +3642,7 @@ void InsetTabular::doDispatch(Cursor & cur, FuncRequest & cmd)
                                TextMetrics const & tm =
                                        cur.bv().textMetrics(cell(cur.idx())->getText(0));
                                cur.pos() = tm.x2pos(cur.pit(), 0, cur.targetX());
+                               cur.setCurrentFont();
                        }
                }
                if (sl == cur.top()) {
@@ -3652,6 +3654,7 @@ void InsetTabular::doDispatch(Cursor & cur, FuncRequest & cmd)
                if (cur.selIsMultiCell()) {
                        cur.pit() = cur.lastpit();
                        cur.pos() = cur.lastpos();
+                       cur.setCurrentFont();
                        return;
                }
                break;
@@ -3674,6 +3677,7 @@ void InsetTabular::doDispatch(Cursor & cur, FuncRequest & cmd)
                                ParagraphMetrics const & pm =
                                        tm.parMetrics(cur.lastpit());
                                cur.pos() = tm.x2pos(cur.pit(), pm.rows().size()-1, cur.targetX());
+                               cur.setCurrentFont();
                        }
                }
                if (sl == cur.top()) {
@@ -3683,6 +3687,7 @@ void InsetTabular::doDispatch(Cursor & cur, FuncRequest & cmd)
                if (cur.selIsMultiCell()) {
                        cur.pit() = 0;
                        cur.pos() = cur.lastpos();
+                       cur.setCurrentFont();
                        return;
                }
                break;
@@ -4300,9 +4305,9 @@ docstring InsetTabular::xhtml(XHTMLStream & xs, OutputParams const & rp) const
        // FIXME XHTML
        // It'd be better to be able to get this from an InsetLayout, but at present
        // InsetLayouts do not seem really to work for things that aren't InsetTexts.
-       xs << StartTag("table");
+       xs << html::StartTag("table");
        docstring ret = tabular.xhtml(xs, rp);
-       xs << EndTag("table");
+       xs << html::EndTag("table");
        return ret;
 }
 
@@ -4315,7 +4320,7 @@ void InsetTabular::validate(LaTeXFeatures & features) const
        // InsetLayouts do not seem really to work for things that aren't InsetTexts.
        if (features.runparams().flavor == OutputParams::HTML)
                features.addPreambleSnippet("<style type=\"text/css\">\n"
-      "table { border: 1px solid black; }\n"
+      "table { border: 1px solid black; display: inline-block; }\n"
       "td { border: 1px solid black; padding: 0.5ex; }\n"
       "</style>");
 }
@@ -4520,7 +4525,7 @@ void InsetTabular::moveNextCell(Cursor & cur, EntryDirection entry_from)
                break;
 
        }
-
+       cur.setCurrentFont();
        resetPos(cur);
 }
 
@@ -4570,7 +4575,7 @@ void InsetTabular::movePrevCell(Cursor & cur, EntryDirection entry_from)
                break;
 
        }
-
+       cur.setCurrentFont();
        resetPos(cur);
 }