From 1e56c0d59c8841cb92db8d4fcc5c101a308b602e Mon Sep 17 00:00:00 2001 From: Paul RASCLE Date: Wed, 24 Jun 2020 15:01:12 +0200 Subject: [PATCH] OCC 7.4 porting for CurveCreator_Widget: TODO check OK --- src/CurveCreator/CurveCreator_Widget.cxx | 78 +++++++++++++----------- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/src/CurveCreator/CurveCreator_Widget.cxx b/src/CurveCreator/CurveCreator_Widget.cxx index 09026460a..09bc3d348 100644 --- a/src/CurveCreator/CurveCreator_Widget.cxx +++ b/src/CurveCreator/CurveCreator_Widget.cxx @@ -136,19 +136,19 @@ CurveCreator_Widget::CurveCreator_Widget(QWidget* parent, QPixmap aStepDownPixmap(aResMgr->loadPixmap("GEOM", tr("ICON_CC_ARROW_DOWN"))); QPixmap aSetColorPixmap(aResMgr->loadPixmap("GEOM", tr("ICON_CC_SETCOLOR"))); - QAction* anAct = createAction( UNDO_ID, tr("UNDO"), anUndoPixmap, tr("UNDO_TLT"), + QAction* anAct = createAction( UNDO_ID, tr("UNDO"), anUndoPixmap, tr("UNDO_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_Z) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onUndo()) ); aTB->addAction(anAct); - anAct = createAction( REDO_ID, tr("REDO"), aRedoPixmap, tr("REDO_TLT"), + anAct = createAction( REDO_ID, tr("REDO"), aRedoPixmap, tr("REDO_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_Y) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onRedo()) ); aTB->addAction(anAct); aTB->addSeparator(); - - anAct = createAction( NEW_SECTION_ID, tr("NEW_SECTION"), aNewSectionPixmap, tr("NEW_SECTION_TLT"), + + anAct = createAction( NEW_SECTION_ID, tr("NEW_SECTION"), aNewSectionPixmap, tr("NEW_SECTION_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_N) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onNewSection()) ); if ( !(theActionFlags & DisableNewSection) ) { @@ -156,21 +156,21 @@ CurveCreator_Widget::CurveCreator_Widget(QWidget* parent, aTB->addSeparator(); } - anAct = createAction( ADDITION_MODE_ID, tr("ADDITION_MODE"), aNewPointPixmap, tr("ADDITION_MODE_TLT"), + anAct = createAction( ADDITION_MODE_ID, tr("ADDITION_MODE"), aNewPointPixmap, tr("ADDITION_MODE_TLT"), QKeySequence() ); anAct->setCheckable(true); connect(anAct, SIGNAL(triggered(bool)), this, SLOT(onAdditionMode(bool)) ); connect(anAct, SIGNAL(toggled(bool)), this, SLOT(onModeChanged(bool)) ); aTB->addAction(anAct); - - anAct = createAction( MODIFICATION_MODE_ID, tr("MODIFICATION_MODE"), anEditPointsPixmap, tr("MODIFICATION_MODE_TLT"), + + anAct = createAction( MODIFICATION_MODE_ID, tr("MODIFICATION_MODE"), anEditPointsPixmap, tr("MODIFICATION_MODE_TLT"), QKeySequence() ); anAct->setCheckable(true); connect(anAct, SIGNAL(triggered(bool)), this, SLOT(onModificationMode(bool)) ); connect(anAct, SIGNAL(toggled(bool)), this, SLOT(onModeChanged(bool)) ); aTB->addAction(anAct); - anAct = createAction( DETECTION_MODE_ID, tr("DETECTION_MODE"), aDetectPointsPixmap, tr("DETECTION_MODE_TLT"), + anAct = createAction( DETECTION_MODE_ID, tr("DETECTION_MODE"), aDetectPointsPixmap, tr("DETECTION_MODE_TLT"), QKeySequence() ); anAct->setCheckable(true); connect(anAct, SIGNAL(triggered(bool)), this, SLOT(onDetectionMode(bool)) ); @@ -178,39 +178,39 @@ CurveCreator_Widget::CurveCreator_Widget(QWidget* parent, // if ( !(theActionFlags & DisableDetectionMode) ) { // aTB->addAction(anAct); // } - - anAct = createAction( CLOSE_SECTIONS_ID, tr("CLOSE_SECTIONS"), QPixmap(), tr("CLOSE_SECTIONS_TLT"), + + anAct = createAction( CLOSE_SECTIONS_ID, tr("CLOSE_SECTIONS"), QPixmap(), tr("CLOSE_SECTIONS_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_W) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onCloseSections()) ); - anAct = createAction( UNCLOSE_SECTIONS_ID, tr("UNCLOSE_SECTIONS"), QPixmap(), + anAct = createAction( UNCLOSE_SECTIONS_ID, tr("UNCLOSE_SECTIONS"), QPixmap(), tr("UNCLOSE_SECTIONS_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_S) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onUncloseSections()) ); - anAct = createAction( SET_SECTIONS_POLYLINE_ID, tr("SET_SECTIONS_POLYLINE"), - aPolylinePixmap, tr("SET_SECTIONS_POLYLINE_TLT"), + anAct = createAction( SET_SECTIONS_POLYLINE_ID, tr("SET_SECTIONS_POLYLINE"), + aPolylinePixmap, tr("SET_SECTIONS_POLYLINE_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_E) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onSetPolyline()) ); - anAct = createAction( SET_SECTIONS_SPLINE_ID, tr("SET_SECTIONS_SPLINE"), aSplinePixmap, + anAct = createAction( SET_SECTIONS_SPLINE_ID, tr("SET_SECTIONS_SPLINE"), aSplinePixmap, tr("SET_SECTIONS_SPLINE_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_R) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onSetSpline()) ); aTB->addSeparator(); - anAct = createAction( REMOVE_ID, tr("REMOVE"), aRemovePixmap, tr("REMOVE_TLT"), + anAct = createAction( REMOVE_ID, tr("REMOVE"), aRemovePixmap, tr("REMOVE_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_Delete ) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onRemove()) ); aTB->addAction(anAct); - anAct = createAction( SETCOLOR_ID, tr("SETCOLOR"), aSetColorPixmap, tr("SETCOLOR_TLT"), + anAct = createAction( SETCOLOR_ID, tr("SETCOLOR"), aSetColorPixmap, tr("SETCOLOR_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_C ) ); connect(anAct, SIGNAL(triggered()), this, SLOT(onSetColor()) ); if ( !(theActionFlags & DisableSetColor) ) aTB->addAction(anAct); - - anAct = createAction( JOIN_ID, tr("JOIN"), aJoinPixmap, tr("JOIN_TLT"), + + anAct = createAction( JOIN_ID, tr("JOIN"), aJoinPixmap, tr("JOIN_TLT"), QKeySequence(Qt::ControlModifier|Qt::Key_Plus ) ); connect( anAct, SIGNAL(triggered()), this, SLOT(onJoin()) ); aTB->addAction(anAct); @@ -220,11 +220,11 @@ CurveCreator_Widget::CurveCreator_Widget(QWidget* parent, connect( anAct, SIGNAL(triggered()), this, SLOT(onBringTogether()) ); aTB->addAction(anAct); - anAct = createAction( CLEAR_ALL_ID, tr("CLEAR_ALL"), QPixmap(), tr("CLEAR_ALL_TLT"), + anAct = createAction( CLEAR_ALL_ID, tr("CLEAR_ALL"), QPixmap(), tr("CLEAR_ALL_TLT"), QKeySequence(Qt::ControlModifier | Qt::ShiftModifier | Qt::Key_Delete ) ); connect( anAct, SIGNAL(triggered()), this, SLOT( onClearAll()) ); - anAct = createAction( JOIN_ALL_ID, tr("JOIN_ALL"), QPixmap(), tr("JOIN_ALL_TLT"), + anAct = createAction( JOIN_ALL_ID, tr("JOIN_ALL"), QPixmap(), tr("JOIN_ALL_TLT"), QKeySequence(Qt::ControlModifier | Qt::ShiftModifier | Qt::Key_Plus ) ); connect( anAct, SIGNAL(triggered()), this, SLOT(onJoinAll()) ); @@ -323,7 +323,7 @@ OCCViewer_ViewPort3d* CurveCreator_Widget::getViewPort() OCCViewer_Viewer* aViewer = getOCCViewer(); if ( aViewer ) aViewPort = ((OCCViewer_ViewWindow*)aViewer->getViewManager()->getActiveView())->getViewPort(); - + return aViewPort; } @@ -457,7 +457,7 @@ void CurveCreator_Widget::updateActionsStates() }*/ } - + /*int aSelObjsCnt = aSelPoints.size() + aSelSections.size(); if( aSelObjsCnt > 0 ){ anEnabledAct << REMOVE_ID; @@ -622,7 +622,7 @@ void CurveCreator_Widget::onEditSection( int theSection ) { if( !myCurve ) return; - + stopActionMode(); mySection = theSection; QString aSectName = QString::fromStdString( myCurve->getSectionName(theSection)); @@ -719,7 +719,7 @@ void CurveCreator_Widget::onSetColor() if (aSections.size() != 1) return; - int aSectNum = aSections[0]; + int aSectNum = aSections[0]; Quantity_Color aColor = ((CurveCreator_Curve*)myCurve)->getColorSection( aSectNum );; QColor aQColor = CurveCreator_Utils::colorConv(aColor); @@ -1017,7 +1017,7 @@ void CurveCreator_Widget::addCoordsByClick( QMouseEvent* pe ) if ( ic.IsNull() ) return; - gp_Pnt aPnt; + gp_Pnt aPnt; OCCViewer_ViewPort3d* vp = getViewPort(); aPnt = CurveCreator_Utils::ConvertClickToPoint( pe->x(), pe->y(), vp->getView() ); @@ -1144,7 +1144,7 @@ void CurveCreator_Widget::onMouseRelease( SUIT_ViewWindow* theWindow, QMouseEven aCtx->ClearSelected( Standard_True ); } return; - } + } if (theEvent->button() != Qt::LeftButton) return; if (!theWindow->inherits("OCCViewer_ViewWindow")) return; @@ -1179,15 +1179,19 @@ void CurveCreator_Widget::onMouseRelease( SUIT_ViewWindow* theWindow, QMouseEven const TopoDS_Shape& W = Curve->mySect2Shape(sectInd+1); TopExp_Explorer exp(W, TopAbs_VERTEX); for (;exp.More();exp.Next()) - filter->AddShape(exp.Current()); + filter->AddShape(exp.Current()); } aCtx->AddFilter(filter); +#if OCC_VERSION_LARGE <= 0x07030000 if (aCtx->HasOpenedContext()) { Handle(AIS_LocalContext) aLctx = aCtx->LocalContext(); aLctx->Filter()->Clear(); aLctx->AddFilter(filter); } +#else + // TODO: check if something required +#endif //} // Initialize the single selection if start and end points are equal, @@ -1240,7 +1244,7 @@ void CurveCreator_Widget::onMouseRelease( SUIT_ViewWindow* theWindow, QMouseEven if ( aCoords.size() < 2 ) { continue; } - + CurveCreator_ICurve::SectionToPoint aSectionToPoint = std::make_pair( aSectionId, aPointId ); if ( !anInitialDragPointsCoords.contains( aSectionToPoint ) ) { @@ -1248,7 +1252,7 @@ void CurveCreator_Widget::onMouseRelease( SUIT_ViewWindow* theWindow, QMouseEven } } } - + // Apply points sorting CurveCreator_ICurve::SectionToPointList aPoints; startCurveModification( aPoints, false ); @@ -1268,7 +1272,7 @@ void CurveCreator_Widget::onMouseRelease( SUIT_ViewWindow* theWindow, QMouseEven } myCurve->setSeveralPoints( aCoordList, false ); - + finishCurveModification( aDraggedPoints ); } else { // if the drag of some points has happened, restore the drag selection @@ -1460,7 +1464,7 @@ void CurveCreator_Widget::insertPointToSelectedSegment( const int theX, } int anInsertPos = -1; - int aLastPoint = myCurve->getNbPoints( aSectionId )-1; + int aLastPoint = myCurve->getNbPoints( aSectionId )-1; if ( ( aPoint1Id == aLastPoint && aPoint2Id == 0 ) || ( aPoint2Id == aLastPoint && aPoint1Id == 0 ) ) anInsertPos = -1; // if the section happens between first and last points @@ -1511,9 +1515,9 @@ void CurveCreator_Widget::moveSelectedPoints( const int theXPosition, aChangedPos[0] = aChangedPos[0] - aXDelta; aChangedPos[1] = aChangedPos[1] - anYDelta; - + aCoordList.push_back( - std::make_pair(std::make_pair( aSectionId, aPointId ), + std::make_pair(std::make_pair( aSectionId, aPointId ), aChangedPos )); } myCurve->setSeveralPoints( aCoordList, false ); @@ -1546,7 +1550,7 @@ void CurveCreator_Widget::updateLocalPointView() } /** - * + * */ void CurveCreator_Widget::setLocalPointContext( const bool theOpen, const bool isUpdateTable ) { @@ -1594,10 +1598,10 @@ void CurveCreator_Widget::setSelectedPoints( const CurveCreator_ICurve::SectionT if ( myDragStarted ) return; Handle(AIS_InteractiveContext) aContext = getAISContext(); - if ( aContext.IsNull() + if ( aContext.IsNull() #if OCC_VERSION_LARGE <= 0x07030000 - || !aContext->HasOpenedContext() -#endif + || !aContext->HasOpenedContext() +#endif ) return; -- 2.39.2