X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetFloat.cpp;h=9d92681dd20ccd021d354ee7406c068dfb24dd45;hb=131f4b92bac3ecb75b47c266dfa3d8543bd4d578;hp=c3600a111db4ab56ae07214c0820723d7f70ed5b;hpb=aa9543fa2bcb1bda0435cee5c1a24a2c3d5008b7;p=lyx.git diff --git a/src/insets/InsetFloat.cpp b/src/insets/InsetFloat.cpp index c3600a111d..9d92681dd2 100644 --- a/src/insets/InsetFloat.cpp +++ b/src/insets/InsetFloat.cpp @@ -225,6 +225,37 @@ bool InsetFloat::hasSubCaptions(ParIterator const & it) const } +string InsetFloat::getAlignment() const +{ + string alignment; + string const buf_alignment = buffer().params().float_alignment; + if (params_.alignment == "document" + && !buf_alignment.empty()) { + alignment = buf_alignment; + } else if (!params_.alignment.empty() + && params_.alignment != "class" + && params_.alignment != "document") { + alignment = params_.alignment; + } + return alignment; +} + + +LyXAlignment InsetFloat::contentAlignment() const +{ + LyXAlignment align = LYX_ALIGN_NONE; + string alignment = getAlignment(); + if (alignment == "left") + align = LYX_ALIGN_LEFT; + else if (alignment == "center") + align = LYX_ALIGN_CENTER; + else if (alignment == "right") + align = LYX_ALIGN_RIGHT; + + return align; +} + + void InsetFloatParams::write(ostream & os) const { if (type.empty()) { @@ -392,17 +423,6 @@ void InsetFloat::latex(otexstream & os, OutputParams const & runparams_in) const placement += *lit; } - string alignment; - string const buf_alignment = buffer().params().float_alignment; - if (params_.alignment == "document" - && !buf_alignment.empty()) { - alignment = buf_alignment; - } else if (!params_.alignment.empty() - && params_.alignment != "class" - && params_.alignment != "document") { - alignment = params_.alignment; - } - // Force \begin{} to appear in a new line. os << breakln << "\\begin{" << from_ascii(tmptype) << '}'; if (runparams.lastid != -1) @@ -414,6 +434,8 @@ void InsetFloat::latex(otexstream & os, OutputParams const & runparams_in) const && (!params_.sideways || (params_.sideways && from_ascii(placement) != "p"))) os << '[' << from_ascii(placement) << ']'; os << '\n'; + + string alignment = getAlignment(); if (alignment == "left") os << "\\raggedright" << breakln; else if (alignment == "center")