X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetbibitem.C;h=89346660f835a460c6f43fd67d8cc08e06bbaa38;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=1a973127d1e6f771b83a0b243a11127d97b740d9;hpb=b02242bfaf88de225615770ec907e25a443a15cd;p=lyx.git diff --git a/src/insets/insetbibitem.C b/src/insets/insetbibitem.C index 1a973127d1..89346660f8 100644 --- a/src/insets/insetbibitem.C +++ b/src/insets/insetbibitem.C @@ -25,8 +25,10 @@ #include "support/std_ostream.h" #include "support/convert.h" -using lyx::docstring; -using lyx::support::prefixIs; + +namespace lyx { + +using support::prefixIs; using std::max; using std::string; @@ -34,13 +36,13 @@ using std::auto_ptr; using std::ostream; int InsetBibitem::key_counter = 0; -string const key_prefix = "key-"; +docstring const key_prefix = from_ascii("key-"); InsetBibitem::InsetBibitem(InsetCommandParams const & p) : InsetCommand(p, "bibitem"), counter(1) { - if (getContents().empty()) - setContents(key_prefix + convert(++key_counter)); + if (getParam("key").empty()) + setParam("key", key_prefix + convert(++key_counter)); } @@ -58,14 +60,14 @@ void InsetBibitem::doDispatch(LCursor & cur, FuncRequest & cmd) case LFUN_INSET_MODIFY: { InsetCommandParams p("bibitem"); - InsetCommandMailer::string2params("bibitem", lyx::to_utf8(cmd.argument()), p); + InsetCommandMailer::string2params("bibitem", to_utf8(cmd.argument()), p); if (p.getCmdName().empty()) { cur.noUpdate(); break; } - if (p.getContents() != params().getContents()) - cur.bv().buffer()->changeRefsIfUnique(params().getContents(), - p.getContents(), InsetBase::CITE_CODE); + if (p["key"] != params()["key"]) + cur.bv().buffer()->changeRefsIfUnique(params()["key"], + p["key"], InsetBase::CITE_CODE); setParams(p); } @@ -86,8 +88,8 @@ void InsetBibitem::read(Buffer const & buf, LyXLex & lex) { InsetCommand::read(buf, lex); - if (prefixIs(getContents(), key_prefix)) { - int const key = convert(getContents().substr(key_prefix.length())); + if (prefixIs(getParam("key"), key_prefix)) { + int const key = convert(getParam("key").substr(key_prefix.length())); key_counter = max(key_counter, key); } } @@ -95,21 +97,18 @@ void InsetBibitem::read(Buffer const & buf, LyXLex & lex) docstring const InsetBibitem::getBibLabel() const { - // FIXME UNICODE - return getOptions().empty() ? - convert(counter) : - lyx::from_utf8(getOptions()); + docstring const & label = getParam("label"); + return label.empty() ? convert(counter) : label; } docstring const InsetBibitem::getScreenLabel(Buffer const &) const { - // FIXME UNICODE - return lyx::from_utf8(getContents()) + " [" + getBibLabel() + ']'; + return getParam("key") + " [" + getBibLabel() + ']'; } -int InsetBibitem::plaintext(Buffer const &, lyx::odocstream & os, +int InsetBibitem::plaintext(Buffer const &, odocstream & os, OutputParams const &) const { os << '[' << getCounter() << "] "; @@ -158,7 +157,7 @@ docstring const bibitemWidest(Buffer const & buffer) // version and the command-line version will give the same // result. // - //int const wx = lyx::use_gui? + //int const wx = use_gui? // theFontMetrics(font).width(label): label.size(); // // So for now we just use the label size in order to be sure @@ -176,5 +175,8 @@ docstring const bibitemWidest(Buffer const & buffer) if (bitem && !bitem->getBibLabel().empty()) return bitem->getBibLabel(); - return lyx::from_ascii("99"); + return from_ascii("99"); } + + +} // namespace lyx