+ //Controls
+ QTreeWidgetItem* cntrItem = createItem( elemItem, Bold );
+ cntrItem->setText( 0, tr( "MEN_CTRL" ) );
+ //Length
+ if( e->GetType()==SMDSAbs_Edge){
+ afunctor.reset( new SMESH::Controls::Length() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ afunctor->SetPrecision( cprecision );
+ QTreeWidgetItem* lenItem = createItem( cntrItem, Bold );
+ lenItem->setText( 0, tr( "LENGTH_EDGES" ) );
+ lenItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ }
+ if( e->GetType() == SMDSAbs_Face ) {
+ //Area
+ afunctor.reset( new SMESH::Controls::Area() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ afunctor->SetPrecision( cprecision );
+ QTreeWidgetItem* areaItem = createItem( cntrItem, Bold );
+ areaItem->setText( 0, tr( "AREA_ELEMENTS" ) );
+ areaItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue(id) ) );
+ //Taper
+ afunctor.reset( new SMESH::Controls::Taper() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ afunctor->SetPrecision( cprecision );
+ QTreeWidgetItem* taperlItem = createItem( cntrItem, Bold );
+ taperlItem->setText( 0, tr( "MEN_TAPER" ) );
+ taperlItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //AspectRatio2D
+ afunctor.reset( new SMESH::Controls::AspectRatio() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ QTreeWidgetItem* ratlItem = createItem( cntrItem, Bold );
+ ratlItem->setText( 0, tr( "ASPECTRATIO_ELEMENTS" ));
+ ratlItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //Minimum angle
+ afunctor.reset( new SMESH::Controls::MinimumAngle() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ afunctor->SetPrecision( cprecision );
+ QTreeWidgetItem* minanglItem = createItem( cntrItem, Bold );
+ minanglItem->setText( 0, tr( "MINIMUMANGLE_ELEMENTS" ) );
+ minanglItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //Wraping angle
+ afunctor.reset( new SMESH::Controls::Warping() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ afunctor->SetPrecision( cprecision );
+ QTreeWidgetItem* warpItem = createItem( cntrItem, Bold );
+ warpItem->setText( 0, tr( "STB_WARP" ));
+ warpItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //Skew
+ afunctor.reset( new SMESH::Controls::Skew() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ afunctor->SetPrecision( cprecision );
+ QTreeWidgetItem* skewItem = createItem( cntrItem, Bold );
+ skewItem->setText( 0, tr( "TOP_SKEW" ) );
+ skewItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //ElemDiam2D
+ afunctor.reset( new SMESH::Controls::MaxElementLength2D() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ QTreeWidgetItem* diamItem = createItem( cntrItem, Bold );
+ diamItem->setText( 0, tr( "MAX_ELEMENT_LENGTH_2D" ));
+ diamItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ }
+ if( e->GetType() == SMDSAbs_Volume ) {
+ //AspectRatio3D
+ afunctor.reset( new SMESH::Controls::AspectRatio3D() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ QTreeWidgetItem* ratlItem3 = createItem( cntrItem, Bold );
+ ratlItem3->setText( 0, tr( "ASPECTRATIO_3D_ELEMENTS" ) );
+ ratlItem3->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //Volume
+ afunctor.reset( new SMESH::Controls::Volume() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ QTreeWidgetItem* volItem = createItem( cntrItem, Bold );
+ volItem->setText( 0, tr( "MEN_VOLUME_3D" ) );
+ volItem->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ //ElementDiameter3D
+ afunctor.reset( new SMESH::Controls::MaxElementLength3D() );
+ afunctor->SetMesh( actor()->GetObject()->GetMesh() );
+ QTreeWidgetItem* diam3Item = createItem( cntrItem, Bold );
+ diam3Item->setText( 0, tr( "MAX_ELEMENT_LENGTH_3D" ) );
+ diam3Item->setText( 1, QString( "%1" ).arg( afunctor->GetValue( id ) ) );
+ }
+ if( e->GetType() >= SMDSAbs_Edge && e->GetType() <= SMDSAbs_Volume ) {
+ //shapeID
+ int shapeID = e->getshapeId();
+ if ( shapeID > 0 ) {
+ QTreeWidgetItem* shItem = createItem( elemItem, Bold );
+ QString shapeType;
+ switch ( actor()->GetObject()->GetMesh()->FindElement( shapeID )->GetType() ) {
+ case SMDS_TOP_EDGE: shapeType = tr( "EDGE" ); break;
+ case SMDS_TOP_FACE: shapeType = tr( "FACE" ); break;
+ case SMDS_TOP_VERTEX: shapeType = tr( "VERTEX" ); break;
+ default: shapeType = tr( "SOLID" );
+ }
+ shItem->setText( 0, tr( "Position" ) );
+ shItem->setText( 1, QString( "%1 #%2" ).arg(shapeType).arg( shapeID ) );
+ }
+ }