convert author names and status messages to docstring

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16363 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Georg Baum 2006-12-21 13:58:28 +00:00
parent 49b753f603
commit c6f0c8d0b6
16 changed files with 56 additions and 52 deletions

View File

@ -721,7 +721,7 @@ bool BufferView::dispatch(FuncRequest const & cmd)
break;
case LFUN_FONT_STATE:
cur.message(from_utf8(cur.currentState()));
cur.message(cur.currentState());
break;
case LFUN_BOOKMARK_SAVE:

View File

@ -35,7 +35,8 @@ bool operator==(Author const & l, Author const & r)
std::ostream & operator<<(std::ostream & os, Author const & a)
{
os << "\"" << a.name() << "\" " << a.email();
// FIXME UNICODE
os << "\"" << to_utf8(a.name()) << "\" " << to_utf8(a.email());
return os;
}
@ -43,8 +44,9 @@ std::istream & operator>>(std::istream & is, Author & a)
{
string s;
getline(is, s);
a.name_ = trim(token(s, '\"', 1));
a.email_ = trim(token(s, '\"', 2));
// FIXME UNICODE
a.name_ = from_utf8(trim(token(s, '\"', 1)));
a.email_ = from_utf8(trim(token(s, '\"', 2)));
return is;
}

View File

@ -12,9 +12,10 @@
#ifndef AUTHOR_H
#define AUTHOR_H
#include "support/docstring.h"
#include <map>
#include <iosfwd>
#include <string>
namespace lyx {
@ -24,23 +25,23 @@ class Author {
public:
Author() {}
Author(std::string const & name, std::string const & email)
Author(docstring const & name, docstring const & email)
: name_(name), email_(email) {}
std::string const name() const {
docstring const name() const {
return name_;
}
std::string const email() const {
docstring const email() const {
return email_;
}
friend std::istream & operator>>(std::istream & os, Author & a);
private:
std::string name_;
docstring name_;
std::string email_;
docstring email_;
};

View File

@ -435,7 +435,7 @@ Buffer * BufferList::getBufferFromTmp(string const & s)
}
void BufferList::setCurrentAuthor(string const & name, string const & email)
void BufferList::setCurrentAuthor(docstring const & name, docstring const & email)
{
BufferStorage::iterator it = bstore.begin();
BufferStorage::iterator end = bstore.end();

View File

@ -12,9 +12,10 @@
#ifndef BUFFER_LIST_H
#define BUFFER_LIST_H
#include "support/docstring.h"
#include <boost/utility.hpp>
#include <string>
#include <vector>
@ -100,7 +101,7 @@ public:
Buffer * previous(Buffer const *) const;
/// reset current author for all buffers
void setCurrentAuthor(std::string const & name, std::string const & email);
void setCurrentAuthor(docstring const & name, docstring const & email);
private:
/// ask to save a buffer on quit, returns false if should cancel

View File

@ -261,7 +261,8 @@ BufferParams::Impl::Impl()
: defskip(VSpace::MEDSKIP)
{
// set initial author
authorlist.record(Author(lyxrc.user_name, lyxrc.user_email));
// FIXME UNICODE
authorlist.record(Author(from_utf8(lyxrc.user_name), from_utf8(lyxrc.user_email)));
}

View File

@ -1203,18 +1203,18 @@ docstring LCursor::selectionAsString(bool label) const
}
string LCursor::currentState()
docstring LCursor::currentState()
{
if (inMathed()) {
odocstringstream os;
info(os);
return to_utf8(os.str());
return os.str();
}
if (inTexted())
return text()->currentState(*this);
return string();
return docstring();
}

View File

@ -91,7 +91,7 @@ public:
//
docstring selectionAsString(bool label) const;
///
std::string currentState();
docstring currentState();
/// auto-correct mode
bool autocorrect() const { return autocorrect_; }

View File

@ -65,12 +65,11 @@ docstring const ControlChanges::getChangeAuthor()
Author const & a(kernel().buffer().params().authors().get(c.author));
// FIXME UNICODE in Author class
docstring author(from_utf8(a.name()));
docstring author(a.name());
if (!a.email().empty()) {
author += " (";
author += from_utf8(a.email());
author += a.email();
author += ")";
}

View File

@ -79,7 +79,7 @@ string const ControlCommandBuffer::historyDown()
}
string const ControlCommandBuffer::getCurrentState() const
docstring const ControlCommandBuffer::getCurrentState() const
{
return lv_.view()->cursor().currentState();
}

View File

@ -14,7 +14,8 @@
#ifndef CONTROLCOMMANDBUFFER_H
#define CONTROLCOMMANDBUFFER_H
#include <string>
#include "support/docstring.h"
#include <vector>
@ -41,7 +42,7 @@ public:
std::string const historyDown();
/// return the font and depth in the active BufferView as a message.
std::string const getCurrentState() const;
docstring const getCurrentState() const;
/// return the possible completions
std::vector<std::string> const completions(std::string const & prefix,

View File

@ -65,7 +65,8 @@ void ControlPrefs::dispatchParams()
kernel().dispatch(FuncRequest(LFUN_LYXRC_APPLY, ss.str()));
// FIXME: these need lfuns
theBufferList().setCurrentAuthor(rc_.user_name, rc_.user_email);
// FIXME UNICODE
theBufferList().setCurrentAuthor(from_utf8(rc_.user_name), from_utf8(rc_.user_email));
lyx::formats = formats_;

View File

@ -2029,19 +2029,19 @@ void LyXFunc::setMessage(docstring const & m) const
}
string const LyXFunc::viewStatusMessage()
docstring const LyXFunc::viewStatusMessage()
{
// When meta-fake key is pressed, show the key sequence so far + "M-".
if (wasMetaKey())
return to_utf8(keyseq->print() + "M-");
return keyseq->print() + "M-";
// Else, when a non-complete key sequence is pressed,
// show the available options.
if (keyseq->length() > 0 && !keyseq->deleted())
return to_utf8(keyseq->printOptions());
return keyseq->printOptions();
if (!view()->buffer())
return to_utf8(_("Welcome to LyX!"));
return _("Welcome to LyX!");
return view()->cursor().currentState();
}

View File

@ -54,7 +54,7 @@ public:
void initKeySequences(kb_keymap * kb);
/// return the status bar state string
std::string const viewStatusMessage();
docstring const viewStatusMessage();
///
void processKeySym(LyXKeySymPtr key, key_modifier::state state);

View File

@ -134,7 +134,7 @@ public:
/// read-write access to individual paragraph
Paragraph & getPar(pit_type pit) { return pars_[pit]; }
// Returns the current font and depth as a message.
std::string currentState(LCursor & cur);
docstring currentState(LCursor & cur);
/** returns row near the specified
* y-coordinate in given paragraph (relative to the screen).

View File

@ -2302,12 +2302,12 @@ int LyXText::cursorY(CursorSlice const & sl, bool boundary) const
// Returns the current font and depth as a message.
string LyXText::currentState(LCursor & cur)
docstring LyXText::currentState(LCursor & cur)
{
BOOST_ASSERT(this == cur.text());
Buffer & buf = cur.buffer();
Paragraph const & par = cur.paragraph();
std::ostringstream os;
odocstringstream os;
if (buf.params().trackChanges)
os << "[C] ";
@ -2316,10 +2316,11 @@ string LyXText::currentState(LCursor & cur)
if (change.type != Change::UNCHANGED) {
Author const & a = buf.params().authors().get(change.author);
os << to_utf8(_("Change: ")) << a.name();
os << _("Change: ") << a.name();
if (!a.email().empty())
os << " (" << a.email() << ")";
os << to_utf8(_(" at ")) << ctime(&change.changetime);
// FIXME ctime is english, we should translate that
os << _(" at ") << ctime(&change.changetime);
os << " : ";
}
@ -2329,34 +2330,31 @@ string LyXText::currentState(LCursor & cur)
LyXFont font = real_current_font;
font.reduce(buf.params().getFont());
// avoid to_utf8(_(...)) re-entrance problem
string const s = font.stateText(&buf.params());
os << to_utf8(bformat(_("Font: %1$s"), from_utf8(s)));
// os << to_utf8(bformat(_("Font: %1$s"), font.stateText(&buf.params)));
// FIXME UNICODE
os << bformat(_("Font: %1$s"), from_utf8(font.stateText(&buf.params())));
// The paragraph depth
int depth = cur.paragraph().getDepth();
if (depth > 0)
os << to_utf8(bformat(_(", Depth: %1$d"), depth));
os << bformat(_(", Depth: %1$d"), depth);
// The paragraph spacing, but only if different from
// buffer spacing.
Spacing const & spacing = par.params().spacing();
if (!spacing.isDefault()) {
os << to_utf8(_(", Spacing: "));
os << _(", Spacing: ");
switch (spacing.getSpace()) {
case Spacing::Single:
os << to_utf8(_("Single"));
os << _("Single");
break;
case Spacing::Onehalf:
os << to_utf8(_("OneHalf"));
os << _("OneHalf");
break;
case Spacing::Double:
os << to_utf8(_("Double"));
os << _("Double");
break;
case Spacing::Other:
os << to_utf8(_("Other (")) << spacing.getValueAsString() << ')';
os << _("Other (") << from_ascii(spacing.getValueAsString()) << ')';
break;
case Spacing::Default:
// should never happen, do nothing
@ -2365,11 +2363,11 @@ string LyXText::currentState(LCursor & cur)
}
#ifdef DEVEL_VERSION
os << to_utf8(_(", Inset: ")) << &cur.inset();
os << to_utf8(_(", Paragraph: ")) << cur.pit();
os << to_utf8(_(", Id: ")) << par.id();
os << to_utf8(_(", Position: ")) << cur.pos();
os << to_utf8(_(", Boundary: ")) << cur.boundary();
os << _(", Inset: ") << &cur.inset();
os << _(", Paragraph: ") << cur.pit();
os << _(", Id: ") << par.id();
os << _(", Position: ") << cur.pos();
os << _(", Boundary: ") << cur.boundary();
// Row & row = cur.textRow();
// os << bformat(_(", Row b:%1$d e:%2$d"), row.pos(), row.endpos());
#endif