Automatic CSS for left and right margins, too. Fixes indentation problem

with LyXCode environment.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35401 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Richard Heck 2010-09-15 17:44:52 +00:00
parent c4c210cc6e
commit c4b7ef0bd0

View File

@ -1010,9 +1010,9 @@ string Layout::defaultCSSClass() const
namespace {
string makeMarginValue(double d) {
string makeMarginValue(char const * side, double d) {
ostringstream os;
os << d << "ex";
os << "margin-" << side << ": " << d << "ex;\n";
return os.str();
}
}
@ -1027,12 +1027,23 @@ void Layout::makeDefaultCSS() const {
// main font
htmldefaultstyle_ = font.asCSS();
// top and bottom margins
// bottom margins
string tmp;
if (topsep > 0)
tmp += "margin-top: " + makeMarginValue(topsep) + ";\n";
tmp += makeMarginValue("top", topsep);
if (bottomsep > 0)
tmp += "margin-bottom: " + makeMarginValue(bottomsep) + ";\n";
tmp += makeMarginValue("bottom", bottomsep);
if (!leftmargin.empty()) {
// we can't really do what LyX does with the margin, so
// we'll just figure out how many characters it is
int const len = leftmargin.length();
tmp += makeMarginValue("left", len);
}
if (!rightmargin.empty()) {
int const len = rightmargin.length();
tmp += makeMarginValue("right", len);
}
if (!tmp.empty()) {
if (!htmldefaultstyle_.empty())
htmldefaultstyle_ += from_ascii("\n");