-// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+
// GEOM GEOMGUI : GUI for Geometry component
// File : TransformationGUI_RotationDlg.cxx
// Author : Lucien PIGNOLONI, Open CASCADE S.A.S.
double SpecificStep = 5;
// min, max, step and decimals for spin boxes & initial values
- initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY
+ initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, SpecificStep, "angle_precision" );
GroupPoints->SpinBox_DX->setValue(anAngle);
// init variables
return false;
initName();
+
+ myObjects.length(0);
+ myEditCurrentArgument = GroupPoints->LineEdit1;
+ myEditCurrentArgument->setText("");
+
// activate selection and connect selection manager
ConstructorsClicked(getConstructorId());
return true;
LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr();
SALOME_ListIO aSelList;
aSelMgr->selectedObjects(aSelList);
+ GEOM::GEOM_Object_var aSelectedObject;
QString aName;
GEOMBase::ConvertListOfIOInListOfGO(aSelList, myObjects);
if (!myObjects.length())
return;
- else
- myEditCurrentArgument->setText(aName);
}
else {
if (aSelList.Extent() != 1)
// nbSel == 1
Standard_Boolean testResult = Standard_False;
- GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult);
+ aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult);
if (!testResult || CORBA::is_nil(aSelectedObject))
return;
//Find SubShape Object in Father
GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName);
- if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study
+ if (aFindedObject->_is_nil()) { // Object not found in study
GEOM::GEOM_IShapesOperations_var aShapesOp =
getGeomEngine()->GetIShapesOperations(getStudyId());
aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex);
}
}
}
+ }
+
+ myEditCurrentArgument->setText(aName);
- myEditCurrentArgument->setText(aName);
-
- if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) {
- myAxis = aSelectedObject;
- if (!myAxis->_is_nil() && !myObjects.length())
- GroupPoints->PushButton1->click();
- }
- else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) {
- myCentPoint = aSelectedObject;
- if (!myCentPoint->_is_nil() && myPoint1->_is_nil())
- GroupPoints->PushButton4->click();
- }
- else if (myEditCurrentArgument == GroupPoints->LineEdit4) {
- myPoint1 = aSelectedObject;
- if (!myPoint1->_is_nil() && myPoint2->_is_nil())
- GroupPoints->PushButton5->click();
- }
- else if (myEditCurrentArgument == GroupPoints->LineEdit5) {
- myPoint2 = aSelectedObject;
- if (!myPoint2->_is_nil() && !myObjects.length())
- GroupPoints->PushButton1->click();
- }
+ if (myEditCurrentArgument == GroupPoints->LineEdit1) {
+ /* if (myObjects.length()) {
+ if (getConstructorId() == 0 && myAxis->_is_nil() || getConstructorId() == 1 && myCentPoint->_is_nil() )
+ GroupPoints->PushButton2->click();
+ }*/ // here commented, because multiple objects can be selected IPAL 21437
+ }
+ else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) {
+ myAxis = aSelectedObject;
+ if (!myAxis->_is_nil() && !myObjects.length())
+ GroupPoints->PushButton1->click();
+ }
+ else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) {
+ myCentPoint = aSelectedObject;
+ if (!myCentPoint->_is_nil() && myPoint1->_is_nil())
+ GroupPoints->PushButton4->click();
+ }
+ else if (myEditCurrentArgument == GroupPoints->LineEdit4) {
+ myPoint1 = aSelectedObject;
+ if (!myPoint1->_is_nil() && myPoint2->_is_nil())
+ GroupPoints->PushButton5->click();
+ }
+ else if (myEditCurrentArgument == GroupPoints->LineEdit5) {
+ myPoint2 = aSelectedObject;
+ if (!myPoint2->_is_nil() && !myObjects.length())
+ GroupPoints->PushButton1->click();
}
// clear selection
- disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0);
+ /* disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0);
myGeomGUI->getApp()->selectionMgr()->clearSelected();
connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()),
- this, SLOT(SelectionIntoArgument()));
+ this, SLOT(SelectionIntoArgument()));*/
+ // here commented, because multiple objects can be selected IPAL 21437
displayPreview();
}
myEditCurrentArgument = GroupPoints->LineEdit1;
GroupPoints->PushButton2->setDown(false);
+ GroupPoints->PushButton4->setDown(false);
+ GroupPoints->PushButton5->setDown(false);
GroupPoints->LineEdit2->setEnabled(false);
+ GroupPoints->LineEdit4->setEnabled(false);
+ GroupPoints->LineEdit5->setEnabled(false);
}
else if (send == GroupPoints->PushButton2) {
myEditCurrentArgument = GroupPoints->LineEdit2;
{
GEOMBase_Skeleton::ActivateThisDialog();
connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ),
- this, SLOT( SelectionIntoArgument() ) );
+ this, SLOT( SelectionIntoArgument() ) );
ConstructorsClicked( getConstructorId() );
}
GEOM::GEOM_Object_var anObj;
+ GEOM::GEOM_ITransformOperations_var anOper = GEOM::GEOM_ITransformOperations::_narrow(getOperation());
+
switch (getConstructorId()) {
case 0:
{
if (toCreateCopy) {
for (int i = 0; i < myObjects.length(); i++) {
myCurrObject = myObjects[i];
- anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())->
- RotateCopy(myObjects[i], myAxis, GetAngle() * PI180);
+ anObj = anOper->RotateCopy(myObjects[i], myAxis, GetAngle() * PI180);
if (!anObj->_is_nil()) {
if(!IsPreview()) {
- anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters));
+ anObj->SetParameters(aParameters.join(":").toLatin1().constData());
}
objects.push_back(anObj._retn());
}
else {
for (int i = 0; i < myObjects.length(); i++) {
myCurrObject = myObjects[i];
- anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())->
- Rotate(myObjects[i], myAxis, GetAngle() * PI180);
+ anObj = anOper->Rotate(myObjects[i], myAxis, GetAngle() * PI180);
if (!anObj->_is_nil()) {
if(!IsPreview()) {
- anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters));
- updateAttributes(anObj, aParameters);
- }
+ anObj->SetParameters(aParameters.join(":").toLatin1().constData());
+ updateAttributes(anObj, aParameters);
+ }
objects.push_back(anObj._retn());
- }
+ }
}
}
res = true;
if (toCreateCopy) {
for (int i = 0; i < myObjects.length(); i++) {
myCurrObject = myObjects[i];
- anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())->
- RotateThreePointsCopy(myObjects[i], myCentPoint, myPoint1, myPoint2);
+ anObj = anOper->RotateThreePointsCopy(myObjects[i], myCentPoint, myPoint1, myPoint2);
if (!anObj->_is_nil())
objects.push_back(anObj._retn());
}
else {
for (int i = 0; i < myObjects.length(); i++) {
myCurrObject = myObjects[i];
- anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())->
- RotateThreePoints(myObjects[i], myCentPoint, myPoint1, myPoint2);
+ anObj = anOper->RotateThreePoints(myObjects[i], myCentPoint, myPoint1, myPoint2);
if (!anObj->_is_nil())
objects.push_back(anObj._retn());
}
anArgs[0] = myCurrObject;
getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, anArgs,
/*theFindMethod=*/GEOM::FSM_Transformed,
- /*theInheritFirstArg=*/true);
+ /*theInheritFirstArg=*/true,
+ mainFrame()->CheckBoxAddPrefix->isChecked());
}
}