- if (!bv->available())
- return string();
-
- if (mathcursor)
- return mathcursor->info();
-
- ostringstream state;
-
- LyXText * text = bv->getLyXText();
- Buffer * buffer = bv->buffer();
- LyXCursor const & c = text->cursor;
-
- bool const show_change = buffer->params().tracking_changes
- && text->cursor.pos() != text->cursorPar()->size()
- && text->cursorPar()->lookupChange(c.pos()) != Change::UNCHANGED;
-
- if (show_change) {
- Change change = text->cursorPar()->lookupChangeFull(c.pos());
- Author const & a = bv->buffer()->params().authors().get(change.author);
- state << _("Change: ") << a.name();
- if (!a.email().empty())
- state << " (" << a.email() << ")";
- if (change.changetime)
- state << _(" at ") << ctime(&change.changetime);
- state << " : ";
- }
-
- // I think we should only show changes from the default
- // font. (Asger)
- LyXFont font = text->real_current_font;
- font.reduce(buffer->params().getLyXTextClass().defaultfont());
-
- // avoid _(...) re-entrance problem
- string const s = font.stateText(&buffer->params());
- state << bformat(_("Font: %1$s"), s);
-
- // state << bformat(_("Font: %1$s"), font.stateText(&buffer->params));