void KoTableRowStyle::loadOdfProperties(KoStyleStack &styleStack) { // The fo:background-color attribute specifies the background color of a cell. if (styleStack.hasProperty(KoXmlNS::fo, "background-color")) { const QString bgcolor = styleStack.property(KoXmlNS::fo, "background-color"); QBrush brush = background(); if (bgcolor == "transparent") setBackground(Qt::NoBrush); else { if (brush.style() == Qt::NoBrush) brush.setStyle(Qt::SolidPattern); brush.setColor(bgcolor); // #rrggbb format setBackground(brush); } } // minimum row height if (styleStack.hasProperty(KoXmlNS::style, "min-row-height")) { setMinimumRowHeight(KoUnit::parseValue(styleStack.property(KoXmlNS::style, "min-row-height"))); } // optimal row height if (styleStack.hasProperty(KoXmlNS::style, "use-optimal-row-height")) { setUseOptimalHeight(styleStack.property(KoXmlNS::style, "use-optimal-row-height") == "true"); } // row height if (styleStack.hasProperty(KoXmlNS::style, "row-height")) { setRowHeight(KoUnit::parseValue(styleStack.property(KoXmlNS::style, "row-height"))); } // The fo:keep-together specifies if a row is allowed to break in the middle of the row. if (styleStack.hasProperty(KoXmlNS::fo, "keep-together")) { setKeepTogether(styleStack.property(KoXmlNS::fo, "keep-together") != "auto"); } // The fo:break-before and fo:break-after attributes insert a page or column break before or after a column. if (styleStack.hasProperty(KoXmlNS::fo, "break-before")) { setBreakBefore(KoText::textBreakFromString(styleStack.property(KoXmlNS::fo, "break-before"))); } if (styleStack.hasProperty(KoXmlNS::fo, "break-after")) { setBreakAfter(KoText::textBreakFromString(styleStack.property(KoXmlNS::fo, "break-after"))); } }
void KTableColumnStyle::loadOdfProperties(KOdfStyleStack &styleStack) { // Column width. if (styleStack.hasProperty(KOdfXmlNS::style, "column-width")) { setColumnWidth(KUnit::parseValue(styleStack.property(KOdfXmlNS::style, "column-width"))); } // Relative column width. if (styleStack.hasProperty(KOdfXmlNS::style, "rel-column-width")) { setRelativeColumnWidth(styleStack.property(KOdfXmlNS::style, "rel-column-width").remove('*').toDouble()); } // The fo:break-before and fo:break-after attributes insert a page or column break before or after a column. if (styleStack.hasProperty(KOdfXmlNS::fo, "break-before")) { if (styleStack.property(KOdfXmlNS::fo, "break-before") != "auto") setBreakBefore(true); } if (styleStack.hasProperty(KOdfXmlNS::fo, "break-after")) { if (styleStack.property(KOdfXmlNS::fo, "break-after") != "auto") setBreakAfter(true); } }