]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetcite.C
hopefully fix tex2lyx linking.
[lyx.git] / src / insets / insetcite.C
index 1d8a16cf4b6c22ff95d09d6f19c498eee4eead2b..5d66cef4366bd5b32696800d00542bdea3eb76ed 100644 (file)
 #include <boost/filesystem/operations.hpp>
 #include <boost/filesystem/exception.hpp>
 
-using lyx::docstring;
-using lyx::support::ascii_lowercase;
-using lyx::support::contains;
-using lyx::support::getStringFromVector;
-using lyx::support::getVectorFromString;
-using lyx::support::ltrim;
-using lyx::support::rtrim;
-using lyx::support::split;
-using lyx::support::tokenPos;
+
+namespace lyx {
+
+using support::ascii_lowercase;
+using support::contains;
+using support::getStringFromVector;
+using support::getVectorFromString;
+using support::ltrim;
+using support::rtrim;
+using support::split;
+using support::tokenPos;
 
 using std::endl;
 using std::replace;
@@ -47,7 +49,6 @@ using std::ostream;
 using std::vector;
 using std::map;
 
-namespace biblio = lyx::biblio;
 namespace fs = boost::filesystem;
 
 
@@ -324,7 +325,7 @@ docstring const InsetCitation::generateLabel(Buffer const & buffer) const
        }
 
        // FIXME UNICODE
-       return lyx::from_utf8(label);
+       return from_utf8(label);
 }
 
 
@@ -357,7 +358,7 @@ docstring const InsetCitation::getScreenLabel(Buffer const & buffer) const
 }
 
 
-int InsetCitation::plaintext(Buffer const & buffer, lyx::odocstream & os,
+int InsetCitation::plaintext(Buffer const & buffer, odocstream & os,
                              OutputParams const &) const
 {
        if (cache.params == params() &&
@@ -391,14 +392,16 @@ string const cleanupWhitespace(string const & citelist)
 // end anon namyspace
 }
 
-int InsetCitation::docbook(Buffer const &, ostream & os, OutputParams const &) const
+int InsetCitation::docbook(Buffer const &, odocstream & os, OutputParams const &) const
 {
-       os << "<citation>" << cleanupWhitespace(getContents()) << "</citation>";
+       os << "<citation>"
+           << from_ascii(cleanupWhitespace(getContents()))
+           << "</citation>";
        return 0;
 }
 
 
-int InsetCitation::textString(Buffer const & buf, lyx::odocstream & os,
+int InsetCitation::textString(Buffer const & buf, odocstream & os,
                       OutputParams const & op) const
 {
        return plaintext(buf, os, op);
@@ -409,23 +412,25 @@ int InsetCitation::textString(Buffer const & buf, lyx::odocstream & os,
 // the \cite command is valid. Eg, the user has natbib enabled, inputs some
 // citations and then changes his mind, turning natbib support off. The output
 // should revert to \cite[]{}
-int InsetCitation::latex(Buffer const & buffer, ostream & os,
+int InsetCitation::latex(Buffer const & buffer, odocstream & os,
                         OutputParams const &) const
 {
        biblio::CiteEngine const cite_engine = buffer.params().cite_engine;
-       string const cite_str =
-               biblio::asValidLatexCommand(getCmdName(), cite_engine);
+       // FIXME UNICODE
+       docstring const cite_str = from_utf8(
+               biblio::asValidLatexCommand(getCmdName(), cite_engine));
 
        os << "\\" << cite_str;
 
-       string const before = getSecOptions();
-       string const after  = getOptions();
+       docstring const & before = getParam("before");
+       docstring const & after  = getParam("after");
        if (!before.empty() && cite_engine != biblio::ENGINE_BASIC)
                os << '[' << before << "][" << after << ']';
        else if (!after.empty())
                os << '[' << after << ']';
 
-       os << '{' << cleanupWhitespace(getContents()) << '}';
+       // FIXME UNICODE
+       os << '{' << from_utf8(cleanupWhitespace(getContents())) << '}';
 
        return 0;
 }
@@ -455,3 +460,6 @@ void InsetCitation::replaceContents(string const & from, string const & to)
                setContents(getStringFromVector(items));
        }
 }
+
+
+} // namespace lyx