Skip to content
Snippets Groups Projects
Commit ab4c94e7 authored by Wuttke, Joachim's avatar Wuttke, Joachim
Browse files

simplify logic

parent 65242f8c
No related branches found
No related tags found
1 merge request!2353renames and other clarification in mask/canvas context; restore projections live display (#885)
......@@ -240,21 +240,22 @@ void ProjectionsPlot::setGraphFromItem(const LineItem* item)
{
if (!m_data_item || !m_data_item->c_field())
return;
if ((dynamic_cast<const HorizontalLineItem*>(item) && m_orientation != Qt::Horizontal)
|| (dynamic_cast<const VerticalLineItem*>(item) && m_orientation != Qt::Vertical))
return;
QCPGraph* graph = graphForItem(item);
if (!graph)
return;
// TODO: merge with similar code in ProjectionsSaver::projectionsData ?
std::unique_ptr<Datafield> field;
// TODO: merge with very similar code in ProjectionsSaver::projectionsData
if (const auto* horLine = dynamic_cast<const HorizontalLineItem*>(item))
field.reset(m_data_item->c_field()->xProjection(horLine->pos()));
else if (const auto* verLine = dynamic_cast<const VerticalLineItem*>(item))
field.reset(m_data_item->c_field()->yProjection(verLine->pos()));
else
if (dynamic_cast<const HorizontalLineItem*>(item)) {
if (m_orientation != Qt::Horizontal)
return;
field.reset(m_data_item->c_field()->xProjection(item->pos()));
} else if (dynamic_cast<const VerticalLineItem*>(item)) {
if (m_orientation != Qt::Vertical)
return;
field.reset(m_data_item->c_field()->yProjection(item->pos()));
} else
ASSERT_NEVER;
auto centers = field->axis(0).binCenters();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment