]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetbranch.C
* BufferParams:
[lyx.git] / src / insets / insetbranch.C
index fd3932db6483b84602ce43cbe2bec146a5a69ea4..3c28c079c6eef8958169aa9422c62cb036c9163f 100644 (file)
 #include "LColor.h"
 #include "lyxlex.h"
 #include "paragraph.h"
+#include "outputparams.h"
 
 #include <sstream>
 
-using lyx::docstring;
+
+namespace lyx {
 
 using std::string;
 using std::auto_ptr;
@@ -37,7 +39,7 @@ using std::ostringstream;
 
 void InsetBranch::init()
 {
-       setInsetName("Branch");
+       setInsetName(from_utf8("Branch"));
        setButtonLabel();
 }
 
@@ -96,11 +98,11 @@ void InsetBranch::setButtonLabel()
        font.decSize();
        font.decSize();
 
-       // FIXME UNICODE
-       docstring s = _("Branch: ") + lyx::from_utf8(params_.branch);
+       docstring s = _("Branch: ") + params_.branch;
        font.setColor(LColor::foreground);
        if (!params_.branch.empty()) {
-               LColor_color c = lcolor.getFromLyXName(params_.branch);
+               // FIXME UNICODE
+               LColor_color c = lcolor.getFromLyXName(to_utf8(params_.branch));
                if (c == LColor::none) {
                        c = LColor::error;
                        s = _("Undef: ") + s;
@@ -125,7 +127,7 @@ void InsetBranch::doDispatch(LCursor & cur, FuncRequest & cmd)
        switch (cmd.action) {
        case LFUN_INSET_MODIFY: {
                InsetBranchParams params;
-               InsetBranchMailer::string2params(lyx::to_utf8(cmd.argument()), params);
+               InsetBranchMailer::string2params(to_utf8(cmd.argument()), params);
                params_.branch = params.branch;
                setButtonLabel();
                break;
@@ -220,27 +222,40 @@ bool InsetBranch::isBranchSelected(Buffer const & buffer) const
 }
 
 
-int InsetBranch::latex(Buffer const & buf, ostream & os,
-                      OutputParams const & runparams) const
+int InsetBranch::latex(Buffer const & buf, odocstream & os,
+                       OutputParams const & runparams) const
 {
        return isBranchSelected(buf) ?
                InsetText::latex(buf, os, runparams) : 0;
 }
 
 
-int InsetBranch::docbook(Buffer const & buf, std::ostream & os,
-                        OutputParams const & runparams) const
+int InsetBranch::plaintext(Buffer const & buf, odocstream & os,
+                           OutputParams const & runparams) const
+{
+       if (!isBranchSelected(buf))
+               return 0;
+
+       os << '[' << _("branch") << ' ' << params_.branch << ":\n";
+       InsetText::plaintext(buf, os, runparams);
+       os << "\n]";
+
+       return PLAINTEXT_NEWLINE + 1; // one char on a separate line
+}
+
+
+int InsetBranch::docbook(Buffer const & buf, odocstream & os,
+                         OutputParams const & runparams) const
 {
        return isBranchSelected(buf) ?
                InsetText::docbook(buf, os, runparams) : 0;
 }
 
 
-int InsetBranch::plaintext(Buffer const & buf, lyx::odocstream & os,
-                          OutputParams const & runparams) const
+void InsetBranch::textString(Buffer const & buf, odocstream & os) const
 {
-       return isBranchSelected(buf) ?
-               InsetText::plaintext(buf, os, runparams): 0;
+       if (isBranchSelected(buf))
+               os << paragraphs().begin()->asString(buf, true);
 }
 
 
@@ -302,7 +317,7 @@ void InsetBranchMailer::string2params(string const & in,
 
 void InsetBranchParams::write(ostream & os) const
 {
-       os << "Branch " << branch << '\n';
+       os << "Branch " << to_utf8(branch) << '\n';
 }
 
 
@@ -310,3 +325,5 @@ void InsetBranchParams::read(LyXLex & lex)
 {
        lex >> branch;
 }
+
+} // namespace lyx