#include "model/step/models/inresultmodel.h" #include "model/step/models/ingroupmodel.h" #include "view/step/models/inresultwidget.h" #include "model/step/tools.h" #include "assert.h" INResultModel::INResultModel() : AbstractInModel() { _widget = new INResultWidget(this); setText(getPrefixedAlias()); } bool INResultModel::isValid() { if (rowCount()!=1) {return false;} return AbstractInModel::isValid(); } bool INResultModel::isRecursive() { return ((INResultWidget*) _widget)->isRecursive(); } bool INResultModel::isZeroOrMoreRootGroup() { return ((INResultWidget*) _widget)->isZeroOrMoreRootGroup(); } bool INResultModel::isCopyResult() { return ((INResultWidget*) _widget)->isCopyResult(); } QString INResultModel::getName() { return "_inResult" + getAlias(); } void INResultModel::getIncludes(QSet &list) { /*list.insert("#include \"ct_result/ct_resultgroup.h\"\n"); if (isCopyResult()) { list.insert("#include \"ct_result/model/inModel/ct_inresultmodelgrouptocopy.h\"\n"); } else { list.insert("#include \"ct_result/model/inModel/ct_inresultmodelgroup.h\"\n"); }*/ getChildrenIncludes(list); } QString INResultModel::getModelDoc() { QString result = ""; result = " - CT_ResultGroup \\n"; QString temp = ""; getChildrenModelDoc(temp); if (temp != "" && temp != "\n") result += "\n" + temp; return result; } QString INResultModel::getModelDeclaration() { QString result = ""; if (isCopyResult()) result = Tools::getIndentation(1) + "CT_HandleInResultGroupCopy<> " + getName() + "; /*!< " + ((AbstractInWidget*) _widget)->getDescription() + " */"; else result = Tools::getIndentation(1) + "CT_HandleInResultGroup " + getName() + "; /*!< " + ((AbstractInWidget*) _widget)->getDescription() + " */"; if (isZeroOrMoreRootGroup()) result += "\n" + Tools::getIndentation(1) + "CT_HandleInStdZeroOrMoreGroup _inZeroOrMoreRootGroup;"; QString temp = ""; getChildrenModelDeclaration(temp); if (temp != "" && temp != "\n") result += "\n" + temp; return result; } QString INResultModel::getCreateInResultModelListProtectedContent(QString resultModelName, bool rootGroup) { Q_UNUSED(resultModelName); Q_UNUSED(rootGroup); QString result = "%1manager.addResult(%2, %3, %4, %5);\n"; result = result.arg(Tools::getIndentation(1), getName(), Tools::trs(getDisplayableName()), Tools::trs(getDescription()), Tools::getBooleanText(isRecursive())); QString temp = getName(); bool needRoot = true; if (isZeroOrMoreRootGroup()) { result += "%1manager.setZeroOrMoreRootGroup(%2, %3);\n"; result = result.arg(Tools::getIndentation(1), getName(), "_inZeroOrMoreRootGroup"); temp = "_inZeroOrMoreRootGroup"; needRoot = false; } INGroupModel* rootGrp = (INGroupModel*) child(0); if (rootGrp != NULL) result += rootGrp->getCreateInResultModelListProtectedContent(temp, needRoot); return result; } QString INResultModel::getComputeContent(QString parentName, int indent, bool rootGroup) { Q_UNUSED(parentName); Q_UNUSED(indent); Q_UNUSED(rootGroup); QString result = ""; INGroupModel* rootGrp = (INGroupModel*) child(0); if (rootGrp != NULL) result += rootGrp->getComputeContent(getName(), 1, true); return result; }