]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
0021671: EDF 1829 GEOM : Bring to front selected objects (continuation)
authormpa <mpa@opencascade.com>
Thu, 11 Sep 2014 07:02:20 +0000 (11:02 +0400)
committermpa <mpa@opencascade.com>
Thu, 11 Sep 2014 07:02:20 +0000 (11:02 +0400)
- solved a problem with selection and pre-selection object in the "additional wireframe actor" mode;
- added GEOM documentation

doc/salome/gui/GEOM/input/geometry_preferences.doc
src/OBJECT/GEOM_AISShape.cxx
src/OBJECT/GEOM_TopWireframeShape.cxx

index 6c1f7d03b73d8fc86f6bbc4c63ae3f67eb5710f2..5e9e94e7d69859a5e6d7ebfe81ae93187af5e3ba 100644 (file)
@@ -33,6 +33,20 @@ default color for edges, vectors and wires (isolated lines).</li>
 vertices.</li>
 <li><b>Color of isolines</b> - allows to select default color for
 isolines.</li>
+<li><b>Top level color</b> - allows to select default color for objects which 
+were brought to the viewer foreground.</li>
+<li><b>Top level display mode</b> - allows to select default top level display mode between:</li>
+<ul>
+<li><b>Show additional wireframe actor</b> - allows to have the shading actor at its usual 
+place (in the back) and add the additional wireframe actor in the viewer foreground.</li>
+<li><b>Keep current display mode</b> - allows to use current display mode of object.</li>
+<li><b>Wireframe</b> - allows to switch display mode to wireframe mode after 
+"top-level" operation.</li>
+<li><b>Shading</b> - allows to switch display mode to shading mode after 
+"top-level" operation.</li>
+<li><b>Shading With Edges</b> - allows to switch display mode to shading with edges mode after 
+"top-level" operation.</li>
+</ul>
 <li><b>Transparency</b> - allows to define default transparency value.</li>
 <li><b>Deflection coefficient</b> - allows to define default deflection
 coefficient for lines and surfaces. A smaller coefficient provides
index fe26569e108b00ce18af22e320f9c351e7f63c57..f75b7a6b7a0bfbeff1d0b86834be9c862071656e 100644 (file)
@@ -457,11 +457,11 @@ void GEOM_AISShape::setTopLevelDisplayMode(const GEOM_AISShape::TopLevelDispMode
 }
 
 Standard_Boolean GEOM_AISShape::switchTopLevel() {
-        return myTopLevelDm != TopShowAdditionalWActor;
+  return myTopLevelDm != TopShowAdditionalWActor;
 }
 
 Standard_Boolean GEOM_AISShape::toActivate() {
-        return Standard_True;
+  return ( myTopLevel && myTopLevelDm == TopShowAdditionalWActor ) ? false : true;
 }
 
 void GEOM_AISShape::setFieldStepInfo( const GEOM::field_data_type theFieldDataType,
index 0cec60e0d91fbc17cf8f0e0b3086091dc76aef3a..2a2101fff01769492e1d10c4fb08dd3f842d202a 100755 (executable)
 #include <TopoDS_Shape.hxx>
 #include <Prs3d_IsoAspect.hxx>
 
-GEOM_TopWireframeShape::GEOM_TopWireframeShape(const TopoDS_Shape& shape)
-  : SALOME_AISShape(shape)
+GEOM_TopWireframeShape::GEOM_TopWireframeShape( const TopoDS_Shape& shape )
+  :SALOME_AISShape(shape)
 {
-      SetDisplayMode(AIS_WireFrame);                    
-          Handle(Prs3d_IsoAspect) anAspect = Attributes()->UIsoAspect();
-          anAspect->SetNumber( 0 );
-          Attributes()->SetUIsoAspect( anAspect );
-          anAspect = Attributes()->VIsoAspect();
-          anAspect->SetNumber( 0 );
-          Attributes()->SetVIsoAspect( anAspect ); 
-      SetColor(GEOM_AISShape::topLevelColor());
+  SetDisplayMode( AIS_WireFrame );
+  Handle(Prs3d_IsoAspect) anAspect = Attributes()->UIsoAspect();
+  anAspect->SetNumber( 0 );
+  Attributes()->SetUIsoAspect( anAspect );
+  anAspect = Attributes()->VIsoAspect();
+  anAspect->SetNumber( 0 );
+  Attributes()->SetVIsoAspect( anAspect );
+  SetColor( GEOM_AISShape::topLevelColor() );
 }
 
 GEOM_TopWireframeShape::~GEOM_TopWireframeShape()
 {
 }
 
-Handle(SALOME_InteractiveObject) GEOM_TopWireframeShape::getIO(){
+Handle(SALOME_InteractiveObject) GEOM_TopWireframeShape::getIO()
+{
   Handle(SALOME_InteractiveObject) IO;
   if ( !GetOwner().IsNull() )
     IO = Handle(SALOME_InteractiveObject)::DownCast( GetOwner() );
   return IO;
 }
 
-Standard_Boolean GEOM_TopWireframeShape::hasIO(){
+Standard_Boolean GEOM_TopWireframeShape::hasIO()
+{
   return !getIO().IsNull();
 }
 
-void GEOM_TopWireframeShape::setName(const Standard_CString /*aName*/)
+void GEOM_TopWireframeShape::setName( const Standard_CString /*aName*/ )
 {
 }
 
-Standard_CString GEOM_TopWireframeShape::getName(){
+Standard_CString GEOM_TopWireframeShape::getName()
+{
   return "";
 }
 
 
-void GEOM_TopWireframeShape::highlightSubShapes(const TColStd_IndexedMapOfInteger& /*aIndexMap*/, 
-                                       const Standard_Boolean /*aHighlight*/ )
+void GEOM_TopWireframeShape::highlightSubShapes( const TColStd_IndexedMapOfInteger& /*aIndexMap*/,
+                                                 const Standard_Boolean /*aHighlight*/ )
 {
 }
 
-Standard_Boolean GEOM_TopWireframeShape::isTopLevel() {
+Standard_Boolean GEOM_TopWireframeShape::isTopLevel()
+{
   return Standard_True;
 }
 
-void GEOM_TopWireframeShape::setTopLevel(Standard_Boolean /*f*/) {
-
+void GEOM_TopWireframeShape::setTopLevel( Standard_Boolean /*f*/ )
+{
 }
 
-Standard_Boolean GEOM_TopWireframeShape::toActivate() {
-        return Standard_False;
+Standard_Boolean GEOM_TopWireframeShape::toActivate()
+{
+  return Standard_True;
 }
 
-Standard_Boolean GEOM_TopWireframeShape::switchTopLevel() {
-        return Standard_True;
+Standard_Boolean GEOM_TopWireframeShape::switchTopLevel()
+{
+  return Standard_True;
 }
 
-void GEOM_TopWireframeShape::setIO(const Handle(SALOME_InteractiveObject)& io){
+void GEOM_TopWireframeShape::setIO( const Handle(SALOME_InteractiveObject)& io )
+{
   SetOwner( io );
 }