]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetSpace.cpp
In multi-par sequences, check for arguments in all pars
[lyx.git] / src / insets / InsetSpace.cpp
index 0a92644669956879fe1d8e7b6c5e589922279ce2..90d171e2d40570c6330fd308565d115735d243f0 100644 (file)
@@ -646,6 +646,41 @@ int InsetSpace::plaintext(odocstream & os, OutputParams const &) const
        case InsetSpaceParams::DOWNBRACEFILL:
                os << "/-^-\\";
                return 5;
+       case InsetSpaceParams::VISIBLE:
+               os.put(0x2423);
+               return 1;
+       case InsetSpaceParams::ENSKIP:
+               os.put(0x2002);
+               return 1;
+       case InsetSpaceParams::ENSPACE:
+               os.put(0x2060); // WORD JOINER, makes the breakable en space unbreakable
+               os.put(0x2002);
+               os.put(0x2060); // WORD JOINER, makes the breakable en space unbreakable
+               return 3;
+       case InsetSpaceParams::QUAD:
+               os.put(0x2003);
+               return 1;
+       case InsetSpaceParams::QQUAD:
+               os.put(0x2003);
+               os.put(0x2003);
+               return 2;
+       case InsetSpaceParams::THIN:
+               os.put(0x2009);
+               return 1;
+       case InsetSpaceParams::MEDIUM:
+               os.put(0x2005);
+               return 1;
+       case InsetSpaceParams::THICK:
+               os.put(0x2004);
+               return 1;
+       case InsetSpaceParams::PROTECTED:
+       case InsetSpaceParams::CUSTOM_PROTECTED:
+               os.put(0x00a0);
+               return 1;
+       case InsetSpaceParams::NEGTHIN:
+       case InsetSpaceParams::NEGMEDIUM:
+       case InsetSpaceParams::NEGTHICK:
+               return 0;
        default:
                os << ' ';
                return 1;
@@ -680,12 +715,15 @@ int InsetSpace::docbook(odocstream & os, OutputParams const &) const
        case InsetSpaceParams::HFILL:
        case InsetSpaceParams::HFILL_PROTECTED:
                os << '\n';
+               break;
        case InsetSpaceParams::DOTFILL:
                // FIXME
                os << '\n';
+               break;
        case InsetSpaceParams::HRULEFILL:
                // FIXME
                os << '\n';
+               break;
        case InsetSpaceParams::LEFTARROWFILL:
        case InsetSpaceParams::RIGHTARROWFILL:
        case InsetSpaceParams::UPBRACEFILL:
@@ -694,6 +732,7 @@ int InsetSpace::docbook(odocstream & os, OutputParams const &) const
        case InsetSpaceParams::CUSTOM_PROTECTED:
                // FIXME
                os << '\n';
+               break;
        }
        return 0;
 }
@@ -707,20 +746,27 @@ docstring InsetSpace::xhtml(XHTMLStream & xs, OutputParams const &) const
                output = " ";
                break;
        case InsetSpaceParams::ENSKIP:
-       case InsetSpaceParams::ENSPACE:
                output ="&ensp;";
                break;
+       case InsetSpaceParams::ENSPACE:
+               output ="&#x2060;&ensp;&#x2060;";
+               break;
        case InsetSpaceParams::QQUAD:
-               output ="&emsp;";
+               output ="&emsp;&emsp;";
+               break;
        case InsetSpaceParams::THICK:
+               output ="&#x2004;";
+               break;
        case InsetSpaceParams::QUAD:
                output ="&emsp;";
                break;
+       case InsetSpaceParams::MEDIUM:
+               output ="&#x2005;";
+               break;
        case InsetSpaceParams::THIN:
                output ="&thinsp;";
                break;
        case InsetSpaceParams::PROTECTED:
-       case InsetSpaceParams::MEDIUM:
        case InsetSpaceParams::NEGTHIN:
        case InsetSpaceParams::NEGMEDIUM:
        case InsetSpaceParams::NEGTHICK:
@@ -742,9 +788,13 @@ docstring InsetSpace::xhtml(XHTMLStream & xs, OutputParams const &) const
                // Can we do anything with those in HTML?
                break;
        case InsetSpaceParams::CUSTOM:
+               // FIXME XHTML
+               // Probably we could do some sort of blank span?
+               break;
        case InsetSpaceParams::CUSTOM_PROTECTED:
                // FIXME XHTML
                // Probably we could do some sort of blank span?
+               output ="&nbsp;";
                break;
        }
        // don't escape the entities!
@@ -787,9 +837,9 @@ bool InsetSpace::isStretchableSpace() const
 }
 
 
-docstring InsetSpace::contextMenuName() const
+string InsetSpace::contextMenuName() const
 {
-       return from_ascii("context-space");
+       return "context-space";
 }