void DiveProfileItem::plot_depth_sample(struct plot_data *entry, QFlags<Qt::AlignmentFlag> flags, const QColor &color) { DiveTextItem *item = new DiveTextItem(this); item->setPos(hAxis->posAtValue(entry->sec), vAxis->posAtValue(entry->depth)); item->setText(get_depth_string(entry->depth, true)); item->setAlignment(flags); item->setBrush(color); texts.append(item); }
void DiveGasPressureItem::plotGasValue(int mbar, int sec, QFlags<Qt::AlignmentFlag> flags, struct gasmix gasmix) { QString gas = gasToStr(gasmix); DiveTextItem *text = new DiveTextItem(this); text->setPos(hAxis->posAtValue(sec), vAxis->posAtValue(mbar)); text->setText(gas); text->setAlignment(flags); text->setBrush(getColor(PRESSURE_TEXT)); texts.push_back(text); }
void DiveGasPressureItem::plotGasValue(int mbar, int sec, struct gasmix gasmix, QFlags<Qt::AlignmentFlag> align, double gasname_offset) { QString gas = get_gas_string(gasmix); DiveTextItem *text = new DiveTextItem(this); text->setPos(hAxis->posAtValue(sec), vAxis->posAtValue(mbar) + gasname_offset ); text->setText(gas); text->setAlignment(align); text->setBrush(getColor(PRESSURE_TEXT)); texts.push_back(text); }
void DiveGasPressureItem::plotPressureValue(int mbar, int sec, QFlags<Qt::AlignmentFlag> flags) { const char *unit; int pressure = get_pressure_units(mbar, &unit); DiveTextItem *text = new DiveTextItem(this); text->setPos(hAxis->posAtValue(sec), vAxis->posAtValue(mbar) - 0.5); text->setText(QString("%1 %2").arg(pressure).arg(unit)); text->setAlignment(flags); text->setBrush(getColor(PRESSURE_TEXT)); texts.push_back(text); }
void DiveProfileItem::plot_depth_sample(struct plot_data *entry, QFlags<Qt::AlignmentFlag> flags, const QColor &color) { int decimals; double d = get_depth_units(entry->depth, &decimals, NULL); DiveTextItem *item = new DiveTextItem(this); item->setPos(hAxis->posAtValue(entry->sec), vAxis->posAtValue(entry->depth)); item->setText(QString("%1").arg(d, 0, 'f', 1)); item->setAlignment(flags); item->setBrush(color); texts.append(item); }
void DiveGasPressureItem::plot_gas_value(int mbar, int sec, QFlags<Qt::AlignmentFlag> flags, int o2, int he) { QString gas = (is_air(o2, he)) ? tr("air") : (he == 0) ? QString(tr("EAN%1")).arg((o2 + 5) / 10) : QString("%1/%2").arg((o2 + 5) / 10).arg((he + 5) / 10); DiveTextItem *text = new DiveTextItem(this); text->setPos(hAxis->posAtValue(sec), vAxis->posAtValue(mbar)); text->setText(gas); text->setAlignment(flags); text->setBrush(getColor(PRESSURE_TEXT)); texts.push_back(text); }
void DiveHeartrateItem::createTextItem(int sec, int hr) { DiveTextItem *text = new DiveTextItem(this); text->setAlignment(Qt::AlignRight | Qt::AlignBottom); text->setBrush(getColor(HR_TEXT)); text->setPos(QPointF(hAxis->posAtValue(sec), vAxis->posAtValue(hr))); text->setScale(0.7); // need to call this BEFORE setText() text->setText(QString("%1").arg(hr)); texts.append(text); }
void DiveMeanDepthItem::createTextItem() { plot_data *entry = dataModel->data().entry; int sec = entry[dataModel->rowCount()-1].sec; qDeleteAll(texts); texts.clear(); DiveTextItem *text = new DiveTextItem(this); text->setAlignment(Qt::AlignRight | Qt::AlignTop); text->setBrush(getColor(TEMP_TEXT)); text->setPos(QPointF(hAxis->posAtValue(sec) + 1, vAxis->posAtValue(lastRunningSum))); text->setScale(0.8); // need to call this BEFORE setText() text->setText(get_depth_string(lrint(lastRunningSum), true)); texts.append(text); }
void DiveTemperatureItem::createTextItem(int sec, int mkelvin) { temperature_t temp; temp.mkelvin = mkelvin; DiveTextItem *text = new DiveTextItem(this); text->setAlignment(Qt::AlignRight | Qt::AlignBottom); text->setBrush(getColor(TEMP_TEXT)); text->setPos(QPointF(hAxis->posAtValue(sec), vAxis->posAtValue(mkelvin))); text->setScale(0.8); // need to call this BEFORE setText() text->setText(get_temperature_string(temp, true)); texts.append(text); }
void DiveTemperatureItem::createTextItem(int sec, int mkelvin) { double deg; const char *unit; deg = get_temp_units(mkelvin, &unit); DiveTextItem *text = new DiveTextItem(this); text->setAlignment(Qt::AlignRight | Qt::AlignBottom); text->setBrush(getColor(TEMP_TEXT)); text->setPos(QPointF(hAxis->posAtValue(sec), vAxis->posAtValue(mkelvin))); text->setScale(0.8); // need to call this BEFORE setText() text->setText(QString("%1%2").arg(deg, 0, 'f', 1).arg(unit)); texts.append(text); }
void DiveMeanDepthItem::createTextItem() { plot_data *entry = dataModel->data().entry; int sec = entry[dataModel->rowCount()-1].sec; qDeleteAll(texts); texts.clear(); int decimals; const char *unitText; double d = get_depth_units(lastRunningSum, &decimals, &unitText); DiveTextItem *text = new DiveTextItem(this); text->setAlignment(Qt::AlignRight | Qt::AlignTop); text->setBrush(getColor(TEMP_TEXT)); text->setPos(QPointF(hAxis->posAtValue(sec) + 1, vAxis->posAtValue(lastRunningSum))); text->setScale(0.8); // need to call this BEFORE setText() text->setText(QString("%1%2").arg(d, 0, 'f', 1).arg(unitText)); texts.append(text); }
void TankItem::createBar(qreal x, qreal w, struct gasmix *gas) { // pick the right gradient, size, position and text QGraphicsRectItem *rect = new QGraphicsRectItem(x, 0, w, height, this); if (gasmix_is_air(gas)) rect->setBrush(air); else if (gas->he.permille) rect->setBrush(trimix); else if (gas->o2.permille == 1000) rect->setBrush(oxygen); else rect->setBrush(nitrox); rect->setPen(QPen(QBrush(), 0.0)); // get rid of the thick line around the rectangle rects.push_back(rect); DiveTextItem *label = new DiveTextItem(rect); label->setText(gasname(gas)); label->setBrush(Qt::black); label->setPos(x + 1, 0); label->setAlignment(Qt::AlignBottom | Qt::AlignRight); #ifdef SUBSURFACE_MOBILE label->setPos(x + 1, -2.5); #endif label->setZValue(101); }