//=================================================================== // ReportItemFrame //=================================================================== ReportItem::PrintResult ReportItemFrame::printHtml(HTMLElement & out) { qfLogFuncFrame(); PrintResult res = PrintOk; if(out.isNull()) return res; qfDebug() << "\tparent html element:" << out.tagName(); //qfDebug() << "\tlayout:" << (isGridLayout()? "grid": (layout() == qf::qmlwidgets::graphics::LayoutHorizontal)? "horizontal": (layout() == qf::qmlwidgets::graphics::LayoutVertical)? "vertical" : "nevim"); //qfDebug() << "\tmetaPaintLayoutLength:" << metaPaintLayoutLength << "metaPaintOrthogonalLayoutLength:" << metaPaintOrthogonalLayoutLength; //--updateChildren(); if(children().count() > 0) { if(children().count() == 1) { /// jedno dite vyres tak, ze se vubec nevytiskne rodicovsky frame ReportItem *it = itemAt(0); res = it->printHtml(out); } else { QDomElement el_div = out.ownerDocument().createElement("div");; if(layout() == LayoutHorizontal) { el_div.setAttribute("layout", "horizontal"); } for(int i=0; i<children().count(); i++) { ReportItem *it = itemAt(i); PrintResult ch_res; //int cnt = 0; do { //if(cnt) qfInfo() << "\t opakovacka:" << cnt; ch_res = it->printHtml(el_div); //if(cnt) qfInfo() << "\t again2:" << (ch_res .flags & FlagPrintAgain); //cnt++; } while(ch_res.flags & FlagPrintAgain); res = ch_res; } out.appendChild(el_div); } /*-- QDomElement el = out.lastChild().toElement(); if(!el.isNull()) { ReportItemTable *tbl_it = dynamic_cast<ReportItemTable*>(this); if(tbl_it) { el.setAttribute("__table", "__fakeBandTable"); } else { static QStringList sl = QStringList() << "__fakeBandDetail" << "__fakeBandHeaderRow" << "__fakeBandFooterRow"; foreach(QString s, sl) { if(element.attribute(s).toInt() > 0) el.setAttribute("__table", s); } } } --*/ } return res; }