mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-03-14 03:41:33 +05:00
OCC 7.4 porting for CurveCreator_Widget: TODO check OK
This commit is contained in:
parent
4da74bc198
commit
1e56c0d59c
@ -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;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user