Various model print fixes (#5433)
* Fixes #5411 print curve Rename Limits to Outputs for consistency with radio and Companion Fix gvars printed as values Print PPM Center and Linear Subtrims * code formatting
This commit is contained in:
committed by
Bertrand Songis
parent
ba1073ace6
commit
16f219d6d3
@@ -712,3 +712,54 @@ QString ModelPrinter::printGlobalVarPopup(int idx)
|
||||
return (model.gvarData[idx].popup ? "Y" : "N" );
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputValueGVar(int val)
|
||||
{
|
||||
QString result = "";
|
||||
if (abs(val) > 10000) {
|
||||
if (val < 0)
|
||||
result = "-";
|
||||
result.append(RawSource(SOURCE_TYPE_GVAR, abs(val)-10001).toString(&model));
|
||||
}
|
||||
else {
|
||||
if (val >= 0)
|
||||
result = "+";
|
||||
result.append(QString::number((qreal)val/10, 'f', 1) + "%");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputOffset(int idx)
|
||||
{
|
||||
return printOutputValueGVar(model.limitData[idx].offset);
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputMin(int idx)
|
||||
{
|
||||
return printOutputValueGVar(model.limitData[idx].min);
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputMax(int idx)
|
||||
{
|
||||
return printOutputValueGVar(model.limitData[idx].max);
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputRevert(int idx)
|
||||
{
|
||||
return model.limitData[idx].revertToString();
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputPpmCenter(int idx)
|
||||
{
|
||||
return QString::number(model.limitData[idx].ppmCenter + 1500);
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputCurve(int idx)
|
||||
{
|
||||
return CurveReference(CurveReference::CURVE_REF_CUSTOM, model.limitData[idx].curve.value).toString(&model, false);
|
||||
}
|
||||
|
||||
QString ModelPrinter::printOutputSymetrical(int idx)
|
||||
{
|
||||
return (model.limitData[idx].symetrical ? "Y": "N");
|
||||
}
|
||||
|
||||
|
||||
@@ -87,6 +87,14 @@ class ModelPrinter: public QObject
|
||||
QString printGlobalVarMin(int idx);
|
||||
QString printGlobalVarMax(int idx);
|
||||
QString printGlobalVarPopup(int idx);
|
||||
QString printOutputValueGVar(int val);
|
||||
QString printOutputOffset(int idx);
|
||||
QString printOutputMin(int idx);
|
||||
QString printOutputMax(int idx);
|
||||
QString printOutputRevert(int idx);
|
||||
QString printOutputCurve(int idx);
|
||||
QString printOutputPpmCenter(int idx);
|
||||
QString printOutputSymetrical(int idx);
|
||||
|
||||
private:
|
||||
Firmware * firmware;
|
||||
|
||||
@@ -162,7 +162,7 @@ QString MultiModelPrinter::print(QTextDocument * document)
|
||||
str += printFlightModes();
|
||||
str += printInputs();
|
||||
str += printMixers();
|
||||
str += printLimits();
|
||||
str += printOutputs();
|
||||
str += printCurves(document);
|
||||
if (firmware->getCapability(Gvars) && !firmware->getCapability(GvarsFlightModes))
|
||||
str += printGvars();
|
||||
@@ -390,18 +390,24 @@ QString MultiModelPrinter::printFlightModes()
|
||||
return str;
|
||||
}
|
||||
|
||||
QString MultiModelPrinter::printLimits()
|
||||
QString MultiModelPrinter::printOutputs()
|
||||
{
|
||||
QString str = printTitle(tr("Limits"));
|
||||
QString str = printTitle(tr("Outputs"));
|
||||
MultiColumns columns(modelPrinterMap.size());
|
||||
columns.append("<table border='0' cellspacing='0' cellpadding='1' width='100%'>" \
|
||||
"<tr>" \
|
||||
" <td><b>" + tr("Channel") + "</b></td>" \
|
||||
" <td><b>" + tr("Offset") + "</b></td>" \
|
||||
" <td><b>" + tr("Min") + "</b></td>" \
|
||||
" <td><b>" + tr("Max") + "</b></td>" \
|
||||
" <td><b>" + tr("Invert") + "</b></td>" \
|
||||
"</tr>");
|
||||
"<td><b>" + tr("Channel") + "</b></td>" \
|
||||
"<td><b>" + tr("Subtrim") + "</b></td>" \
|
||||
"<td><b>" + tr("Min") + "</b></td>" \
|
||||
"<td><b>" + tr("Max") + "</b></td>" \
|
||||
"<td><b>" + tr("Direct") + "</b></td>");
|
||||
if (IS_HORUS_OR_TARANIS(firmware->getBoard()))
|
||||
columns.append(" <td><b>" + tr("Curve") + "</b></td>");
|
||||
if (firmware->getCapability(PPMCenter))
|
||||
columns.append(" <td><b>" + tr("PPM") + "</b></td>");
|
||||
if (firmware->getCapability(SYMLimits))
|
||||
columns.append(" <td><b>" + tr("Linear") + "</b></td>");
|
||||
columns.append("</tr>");
|
||||
for (int i=0; i<firmware->getCapability(Outputs); i++) {
|
||||
int count = 0;
|
||||
for (int k=0; k < modelPrinterMap.size(); k++)
|
||||
@@ -411,15 +417,30 @@ QString MultiModelPrinter::printLimits()
|
||||
columns.append("<tr><td><b>");
|
||||
COMPARE(modelPrinter->printChannelName(i));
|
||||
columns.append("</td><td>");
|
||||
COMPARE(model->limitData[i].offsetToString());
|
||||
COMPARE(modelPrinter->printOutputOffset(i));
|
||||
columns.append("</td><td>");
|
||||
COMPARE(model->limitData[i].minToString());
|
||||
COMPARE(modelPrinter->printOutputMin(i));
|
||||
columns.append("</td><td>");
|
||||
COMPARE(model->limitData[i].maxToString());
|
||||
COMPARE(modelPrinter->printOutputMax(i));
|
||||
columns.append("</td><td>");
|
||||
COMPARE(model->limitData[i].revertToString());
|
||||
columns.append("</td></tr>");
|
||||
|
||||
COMPARE(modelPrinter->printOutputRevert(i));
|
||||
columns.append("</td>");
|
||||
if (IS_HORUS_OR_TARANIS(firmware->getBoard())) {
|
||||
columns.append("<td>");
|
||||
COMPARE(modelPrinter->printOutputCurve(i));
|
||||
columns.append("</td>");
|
||||
}
|
||||
if (firmware->getCapability(PPMCenter)) {
|
||||
columns.append("<td>");
|
||||
COMPARE(modelPrinter->printOutputPpmCenter(i));
|
||||
columns.append("</td>");
|
||||
}
|
||||
if (firmware->getCapability(SYMLimits)) {
|
||||
columns.append("<td>");
|
||||
COMPARE(modelPrinter->printOutputSymetrical(i));
|
||||
columns.append("</td>");
|
||||
}
|
||||
columns.append("</tr>");
|
||||
}
|
||||
columns.append("</table>");
|
||||
str.append(columns.print());
|
||||
|
||||
@@ -66,7 +66,7 @@ class MultiModelPrinter: public QObject
|
||||
QString printSetup();
|
||||
QString printHeliSetup();
|
||||
QString printFlightModes();
|
||||
QString printLimits();
|
||||
QString printOutputs();
|
||||
QString printInputs();
|
||||
QString printMixers();
|
||||
QString printCurves(QTextDocument * document);
|
||||
|
||||
Reference in New Issue
Block a user