#include <HYDROGUI_MergePolylinesOp.h>
#include <HYDROGUI_MergePolylinesDlg.h>
+#include <HYDROGUI_UpdateFlags.h>
+#include <HYDROData_Document.h>
+#include <HYDROData_PolylineOperator.h>
HYDROGUI_MergePolylinesOp::HYDROGUI_MergePolylinesOp( HYDROGUI_Module* theModule )
: HYDROGUI_Operation( theModule )
{
HYDROGUI_Operation::startOperation();
- //TODO
+ HYDROGUI_MergePolylinesDlg* aPanel =
+ ::qobject_cast<HYDROGUI_MergePolylinesDlg*>( inputPanel() );
+ if ( !aPanel )
+ return;
+
+ aPanel->setPolylinesFromSelection();
}
HYDROGUI_InputPanel* HYDROGUI_MergePolylinesOp::createInputPanel() const
QString& theErrorMsg,
QStringList& theBrowseObjectsEntries )
{
- /* TODO:
- HYDROGUI_LocalCSDlg* aPanel = ::qobject_cast<HYDROGUI_LocalCSDlg*>( inputPanel() );
+ HYDROGUI_MergePolylinesDlg* aPanel = ::qobject_cast<HYDROGUI_MergePolylinesDlg*>( inputPanel() );
if ( !aPanel )
return false;
- double aLX = aPanel->GetLocalX();
- double aLY = aPanel->GetLocalY();
- doc()->SetLocalCS( aLX, aLY );
+ QString aName = aPanel->GetResultName();
+ HYDROData_SequenceOfObjects aPolylinesList = aPanel->selectedPolylines();
+ HYDROData_PolylineOperator anOp;
+ anOp.Merge( doc(), aName.toLatin1().data(), aPolylinesList );
theUpdateFlags = UF_Model | UF_OCCViewer | UF_OCC_Forced | UF_VTKViewer;
- */
return true;
}