本文整理汇总了C++中PlotCurve::id方法的典型用法代码示例。如果您正苦于以下问题:C++ PlotCurve::id方法的具体用法?C++ PlotCurve::id怎么用?C++ PlotCurve::id使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PlotCurve
的用法示例。
在下文中一共展示了PlotCurve::id方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: handleSelection
void PlotScene::handleSelection(void)
{
if (this->selectionLocked > 0)
return;
QList<QGraphicsItem*> items = this->selectedItems();
/* On n'a sélectionné qu'un élément, ça n'est donc pas une selection
* rectangulaire --> on a sélectionné un point
*/
if (items.count() == 1)
{
CoordinateItem* coord = qgraphicsitem_cast<CoordinateItem*>(items.first());
if (coord != NULL)
{
PlotCurve* parent = qgraphicsitem_cast<PlotCurve*>(coord->parentItem());
if (parent != NULL)
emit this->pointSelected(coord->index().toFloat(), parent->id());
}
}
else if (items.count() > 1)
{
QMap< PlotCurve*, QPair<float, float> > intervalsBounds;
foreach (QGraphicsItem* item, items)
{
CoordinateItem* coord = qgraphicsitem_cast<CoordinateItem*>(item);
if (coord != NULL)
{
PlotCurve* parent = qgraphicsitem_cast<PlotCurve*>(coord->parentItem());
if (parent != NULL)
{
if (! intervalsBounds.contains(parent))
{
intervalsBounds[parent].first = coord->index().toFloat();
intervalsBounds[parent].second = coord->index().toFloat();
}
else
{
if (coord->index().toFloat() < intervalsBounds[parent].first)
intervalsBounds[parent].first = coord->index().toFloat();
else if (coord->index().toFloat() > intervalsBounds[parent].second)
intervalsBounds[parent].second = coord->index().toFloat();
}
}
}
}
示例2: removeCurves
bool PlotScene::removeCurves(const QVariant& idTrack)
{
PlotCurve* targetCurve;
for (int i(0); i < this->curves.count(); ++i)
{
targetCurve = this->curves.at(i);
if(targetCurve->id() == idTrack)
{
this->curves.removeAt(i);
this->removeItem(targetCurve);
delete targetCurve;
return true;
}
}
return false;
}