(#467) Moving curves onto a track inserts them in front of existing curves

Dragging and dropping curves onto a curve appends curves after the given
curve.
This commit is contained in:
Pål Hagen
2015-10-22 16:56:10 +02:00
parent b18ae1a14a
commit e9f94fc959
7 changed files with 86 additions and 3 deletions

View File

@@ -241,6 +241,13 @@ bool RiuDragDrop::dropMimeData(const QMimeData *data, Qt::DropAction action, int
return handleGridCaseGroupDrop(action, objectGroup, gridCaseGroup);
}
RimWellLogPlotCurve* wellLogPlotCurve;
objHandle->firstAnchestorOrThisOfType(wellLogPlotCurve);
if (wellLogPlotCurve)
{
return handleWellLogPlotCurveDrop(action, objectGroup, wellLogPlotCurve);
}
RimWellLogPlotTrack* wellLogPlotTrack;
objHandle->firstAnchestorOrThisOfType(wellLogPlotTrack);
if (wellLogPlotTrack)
@@ -361,6 +368,27 @@ bool RiuDragDrop::handleWellLogPlotTrackDrop(Qt::DropAction action, caf::PdmObje
return false;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiuDragDrop::handleWellLogPlotCurveDrop(Qt::DropAction action, caf::PdmObjectGroup& objectGroup, RimWellLogPlotCurve* wellLogPlotCurve)
{
std::vector<RimWellLogPlotCurve*> wellLogPlotCurves = RiuTypedPdmObjects<RimWellLogPlotCurve>::typedObjectsFromGroup(objectGroup);
if (wellLogPlotCurves.size() > 0)
{
if (action == Qt::MoveAction)
{
RimWellLogPlotTrack* wellLogPlotTrack;
wellLogPlotCurve->firstAnchestorOrThisOfType(wellLogPlotTrack);
RicWellLogPlotTrackFeatureImpl::moveCurvesToWellLogPlotTrack(wellLogPlotTrack, wellLogPlotCurves, wellLogPlotCurve);
return true;
}
}
return false;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------