-// Copyright (C) 2007-2008 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
+// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+
// GEOM RepairGUI : GUI for Geometry component
// File : RepairGUI_RemoveExtraEdgesDlg.cxx
// Author : Michael Zorin, Open CASCADE S.A.S.
-
+//
#include "RepairGUI_RemoveExtraEdgesDlg.h"
#include <DlgRef.h>
// TRUE to construct a modal dialog.
//=================================================================================
RepairGUI_RemoveExtraEdgesDlg::RepairGUI_RemoveExtraEdgesDlg( GeometryGUI* theGeometryGUI, QWidget* parent,
- bool modal )
+ bool modal )
: GEOMBase_Skeleton( theGeometryGUI, parent, modal )
{
SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr();
activateSelection();
mainFrame()->GroupBoxPublish->show();
+ //Hide preview checkbox
+ mainFrame()->CheckBoxPreview->hide();
/* signals and slots connections */
connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) );
connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) );
connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ),
- this, SLOT( SelectionIntoArgument() ) );
+ this, SLOT( SelectionIntoArgument() ) );
initName( tr( "REMOVE_EXTRA_EDGES_NEW_OBJ_NAME" ) );
+ resize(100,100);
+ SelectionIntoArgument();
}
//=================================================================================
void RepairGUI_RemoveExtraEdgesDlg::ClickOnOk()
{
+ setIsApplyAndClose( true );
if ( ClickOnApply() )
ClickOnCancel();
}
}
// nbSel == 1
- Standard_Boolean testResult = Standard_False;
GEOM::GEOM_Object_ptr aSelectedObject =
- GEOMBase::ConvertIOinGEOMObject( aSelList.First(), testResult );
+ GEOMBase::ConvertIOinGEOMObject( aSelList.First() );
- if ( !testResult )
+ if ( CORBA::is_nil( aSelectedObject ) )
return;
if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) {
{
GEOMBase_Skeleton::ActivateThisDialog();
connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ),
- this, SLOT( SelectionIntoArgument() ) );
+ this, SLOT( SelectionIntoArgument() ) );
activateSelection();
}
void RepairGUI_RemoveExtraEdgesDlg::activateSelection()
{
TColStd_MapOfInteger aTypes;
+ aTypes.Add( GEOM_SHELL );
aTypes.Add( GEOM_SOLID );
aTypes.Add( GEOM_COMPOUND );
globalSelection( aTypes );
int nbFacesOptimum = -1; // -1 means do not union faces
if (GroupPoints->CheckButton1->isChecked())
nbFacesOptimum = 0; // 0 means union all faces, that possible
- anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->RemoveExtraEdges
- (myObject, nbFacesOptimum);
+ GEOM::GEOM_IBlocksOperations_var anOper = GEOM::GEOM_IBlocksOperations::_narrow(getOperation());
+ anObj = anOper->RemoveExtraEdges(myObject, nbFacesOptimum);
if (!anObj->_is_nil())
objects.push_back(anObj._retn());
if ( mainFrame()->CheckBoxRestoreSS->isChecked() ) {
// empty list of arguments means that all arguments should be restored
getGeomEngine()->RestoreSubShapesSO( theStudy, theSObject, GEOM::ListOfGO(),
- /*theFindMethod=*/GEOM::FSM_GetInPlace, // ? GetInPlaceByHistory
- /*theInheritFirstArg=*/true );
+ /*theFindMethod=*/GEOM::FSM_GetInPlace, // ? GetInPlaceByHistory
+ /*theInheritFirstArg=*/true,
+ mainFrame()->CheckBoxAddPrefix->isChecked() );
}
}