0024637: Visualization - clean up implementation of rendering in immediate mode
[occt.git] / src / AIS / AIS_InteractiveContext.cdl
old mode 100755 (executable)
new mode 100644 (file)
index bbab429..183c40a
@@ -1,24 +1,30 @@
--- File:       AIS_InteractiveContext.cdl
--- Created:    Wed Dec 18 10:11:30 1996
--- Author:     Robert COUBLANC
---             <rob@robox.paris1.matra-dtv.fr>
---             
+-- Created on: 1996-12-18
+-- Created by: Robert COUBLANC
+-- Copyright (c) 1996-1999 Matra Datavision
+-- Copyright (c) 1999-2014 OPEN CASCADE SAS
+--
+-- This file is part of Open CASCADE Technology software library.
+--
+-- This library is free software; you can redistribute it and/or modify it under
+-- the terms of the GNU Lesser General Public License version 2.1 as published
+-- by the Free Software Foundation, with special exception defined in the file
+-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+-- distribution for complete text of the license and disclaimer of any warranty.
+--
+-- Alternatively, this file may be used under the terms of Open CASCADE
+-- commercial license or contractual agreement.
+
 --Modified by   
 --   rob : Dec 17 1997 -> Update Method Added + Use in Deviation Angle...
---   
 --   rob : Feb 05 1998 -> UpdateOnlySelection, UpdateOnlyPrs
---   
 --         Apr 02 1998 -> Select Methods has been added a boolean updateviewer.
 --   GG  :  GER61351 17/11/1999 Change SetColor() with a compatible i
 --         Quantity_Color instead the restricted NameOfColor.
 --          Add SetCurrentFacingModel() methods
---   EUG :  G003 05/11/1999 Degeneration mode support
---              Add SetDegenerateModel() methods
 --   GG  : IMP140200 Add SetSelectedAspect() method
 --   GG  : 25/05/00 BUC60688 Add SetSensitivity() methods 
 --   VSV : 22/05/01 Add Selection by polygon
 --   SAV :  Add DisplayFromCollector() method
---   GG  : IMP150501 CADPAK_V2 Add Drag() method
 --   ZSV : IMP160701 Add InitDetected(),MoreDetected(),NextDetected(),
 --                      DetectedCurrentShape(),DetectedCurrentObject()
 --                      methods
 --   SAV : OCC172 : Delete() redefined to remove selection objects from
 --                  the static map.
 --   SAN : OCC4895 22/03/04 High-level interface for controlling polygon offsets
---
 --   SLN : SetToHilightSelected method added
 
----Copyright:   Matra Datavision 1996
 
 
 class InteractiveContext from AIS inherits TShared from MMgt
@@ -103,6 +107,7 @@ uses
     SelectionManager      from SelectMgr,
     PresentationManager3d from PrsMgr,
     ViewerSelector3d      from StdSelect,
+    SensitivityMode       from StdSelect,
     MapOfInteractive      from AIS,
     InteractiveObject     from AIS,
     DisplayMode           from AIS,
@@ -131,7 +136,6 @@ uses
     Location              from TopLoc,
     EntityOwner           from SelectMgr,
     TypeOfFacingModel    from Aspect,
-    TypeOfDegenerateModel from Aspect,
     Array1OfPnt2d         from TColgp,
     Transformation       from Geom
 
@@ -142,25 +146,9 @@ is
        ---Purpose:
        -- Constructs the interactive context object defined by
        -- the principal viewer MainViewer.    
-    
-    Create(MainViewer,Collector: Viewer from V3d)
-    returns mutable InteractiveContext from  AIS;
-       ---Purpose:
-       -- Constructs the interactive context object defined by
-       -- the principal viewer MainViewer and the collector
-       -- (or trash) viewer.
-          
 
     Delete(me) is redefined;
 
-    IsCollectorClosed(me) returns Boolean from Standard;
-    ---C++: inline
-    CloseCollector(me:mutable);
-    ---C++: inline
-    OpenCollector(me:mutable);
-
-
-
                    ---Category: General DISPLAY SERVICES
     SetAutoActivateSelection( me: mutable; Auto : Boolean from Standard ); 
     GetAutoActivateSelection( me ) returns Boolean from Standard;
@@ -233,70 +221,27 @@ is
 
     Erase(me             : mutable; 
          aniobj         : InteractiveObject from AIS;
-         updateviewer   : Boolean from Standard = Standard_True;
-         PutInCollector : Boolean from Standard = Standard_False);
----Purpose: To erase presentations in current local context, or
--- failing that, in other local contexts which allow erasing.
---
--- If putinCollector is True, the object is erased with graphical status Erased,
--- and put into the Collector. These objects can be retrieved
--- from Interactive Context by ObjectsInCollector method.
--- If putinCollector is False, the objects erased with graphical status FullErased,
--- and not put into the Collector. These objects can be retrieved
--- from Interactive Context by ErasedObjects method.
---
--- Note: objects that are put into the Collector recomute their presentation
--- for Collector Presentation Manager.
---
--- If a local context is open and if updateviewer is
--- False, the presentation of the Interactive
--- Object activates the selection mode; the object is
--- displayed but no viewer will be updated.
-
-    EraseMode(me             : mutable;
-             aniobj         : InteractiveObject from AIS;
-             aMode          : Integer from Standard;
-             updateviewer   : Boolean from Standard = Standard_True); 
-    ---Purpose: Updates viewer contents and returns the display
--- mode of each aniobj object. Use only if more than
--- one display mode is active in the main viewer.
--- This method works only on presentation modes other
--- than the default mode. Nothing is done if aMode is
--- the default presentation mode.
--- If a local context is open and if updateviewer equals
--- Standard_False, the presentation of the Interactive
--- Object activates the selection mode; the object is
--- displayed but no viewer will be updated.
-
-
-
-    EraseAll(me:mutable;
-            PutInCollector : Boolean from Standard = Standard_False;
-            updateviewer   : Boolean from Standard = Standard_True);
-    ---Purpose: Every erased object goes into the Collector viewer,
-    --          depending on PutInCollector value.
-
-    DisplayAll(me                : mutable;
-              OnlyFromCollector : Boolean from Standard = Standard_False;
-              updateviewer      : Boolean from Standard = Standard_True);
-    ---Purpose: Displays all erased objects or display all objects from collector
-
-    DisplayFromCollector(me     : mutable;
-                         anIObj          :  InteractiveObject from AIS;
-                         updateviewer    : Boolean from Standard = Standard_True);
-    ---Purpose: display anIObj from the collector.
-
-    EraseSelected(me:mutable;
-                 PutInCollector:Boolean from Standard=Standard_False; 
-                 updateviewer:Boolean from Standard = Standard_True);
+         updateviewer   : Boolean from Standard = Standard_True);
+---Purpose: Hides the object. The object's presentations are simply
+-- flagged as invisible and therefore excluded from redrawing.
+-- To show hidden objects, use Display().
+
+    EraseAll (me          : mutable;
+              updateviewer: Boolean from Standard = Standard_True);
+    ---Purpose: Hides all objects. The object's presentations are simply
+-- flagged as invisible and therefore excluded from redrawing.
+-- To show all hidden objects, use DisplayAll().
+
+    DisplayAll(me          : mutable;
+               updateviewer: Boolean from Standard = Standard_True);
+    ---Purpose: Displays all hidden objects.
+
+    EraseSelected(me: mutable;
+                  updateviewer: Boolean from Standard = Standard_True);
        ---Purpose:
--- Erases selected objects if there is no open active local context.
--- If there is no local context activated and if
--- updateviewer equals Standard_False, the
--- presentation of the Interactive Object activates the
--- selection mode; the object is displayed but no viewer
--- will be updated.
--- If a local context is open, this method is neutral.
+-- Hides selected objects. The object's presentations are simply
+-- flagged as invisible and therefore excluded from redrawing.
+-- To show hidden objects, use Display().
     
     DisplaySelected(me:mutable;updateviewer:Boolean from Standard = Standard_True);
     ---Purpose: Displays selected objects if a local context is open.
@@ -406,6 +351,26 @@ is
     ---Purpose: Sets the display priority aPriority of the seen parts
 -- presentation of the entity anIobj.
 
+    SetZLayer( me         : mutable;
+               theIObj    : InteractiveObject from AIS;
+               theLayerId : Integer from Standard );
+    ---Purpose: Set Z layer id for interactive object. The layer can be
+    -- specified for displayed object only. The Z layers can be used to display
+    -- temporarily presentations of some object in front of the other objects
+    -- in the scene. The ids for Z layers are generated by V3d_Viewer.
+    -- Note that Z layers differ from under-/overlayer in V3d_View:
+    -- under-/overlayer are intended for specific 2D drawings that appear
+    -- behind/in front of all 3D presentations, while SetZLayer() method
+    -- applies to regular 3D presentations and does not imply any specific
+    -- drawing methods.
+
+    GetZLayer( me;
+               theIObj : InteractiveObject from AIS )
+      returns Integer from Standard;
+    ---Purpose: Get Z layer id set for displayed interactive object.
+    -- If the object doesn't exists in context or has no computed presentations,
+    -- the method returns -1.
+
     Redisplay(me     : mutable;
              aniobj : InteractiveObject from AIS;
              updateviewer : Boolean from Standard = Standard_True;
@@ -441,16 +406,14 @@ is
     ---Purpose: Recomputes the active selections, flags the others
     --          Doesn't update presentations
 
-    Update(me       : mutable;
-          anIobj   : InteractiveObject from AIS;
-          updateviewer : Boolean from Standard = Standard_True);
-    ---Purpose: Checks which presentations are flagged "to be recomputed"
-    --          and recomputes them if they are displayed.
-    --          This method doesn't force any Computation.
-    --          Recomputes Flagged selections if they are activated.
-
-
-                       
+    Update (me              : mutable;
+            theIObj         : InteractiveObject from AIS;
+            theUpdateViewer : Boolean from Standard = Standard_True);
+    ---Purpose: Updates displayed interactive object by checking and
+    --          recomputing its flagged as "to be recomputed" presentation
+    --          and selection structures. This method does not force any
+    --          recomputation on its own. The method recomputes selections
+    --          even if they are loaded without activation in particular selector.
 
     SetDisplayMode(me     : mutable;
                   aniobj : InteractiveObject from AIS;
@@ -494,6 +457,17 @@ is
 -- Removes selection mode from Interactive Objects.
 -- aMode provides the selection mode index of the entity aniobj.
     
+    SetSensitivityMode(me    : mutable;
+                       aMode : SensitivityMode from StdSelect) is static;
+    ---Level: Public
+    ---Purpose: Sets the selection sensitivity mode. SM_WINDOW mode
+    -- uses the specified pixel tolerance to compute the sensitivity
+    -- value, SM_VIEW mode allows to define the sensitivity manually.
+
+    SensitivityMode(me) returns SensitivityMode from StdSelect;
+    ---Level: Public
+    ---Purpose: Returns the selection sensitivity mode.
+
     SetSensitivity(me:mutable;
                        aPrecision: Real from Standard);
     ---Level: Public
@@ -506,7 +480,11 @@ is
 --   When a local context is open, the defined sensitivity applies to
 -- this local context instead of the main context.
 
-    SetSensitivity(me:mutable;
+    Sensitivity (me) returns Real from Standard;
+    ---Level: Public 
+    ---Purpose: Returns the selection sensitivity value.
+
+    SetPixelTolerance(me:mutable;
                        aPrecision: Integer from Standard = 4);
     ---Level: Public
     ---Purpose: Define the current selection pixel sensitivity
@@ -514,6 +492,10 @@ is
     --  Warning: When a local context is open the sensitivity is apply on it 
     --          instead on the main context.
 
+    PixelTolerance(me) returns Integer from Standard;
+    ---Level: Public 
+    ---Purpose: Returns the pixel tolerance.
+
                   ---Category: put locations on objects....
                   --           
 
@@ -651,33 +633,6 @@ is
 -- Standard_False, the presentation of the Interactive
 -- Object activates the selection mode; the object is
 -- displayed but no viewer will be updated.
-        
-    SetDegenerateModel ( me : mutable;
-               aniobj  : InteractiveObject from AIS;
-                aModel  : TypeOfDegenerateModel from Aspect =
-                                                Aspect_TDM_WIREFRAME;
-                aRatio : Ratio from Quantity = 0.0);
-    ---Level: Public
-    ---Purpose: Sets the model of degeneration for the shaded representation
-    --   of the object <aniobj>
-    --   according to the degenerate ratio >= 0. & <= 1. where :
-    --   <aRatio> = 0. indicate that all polygons of the object
-    --      will be displayed.
-    --   <aRatio> = 1. indicate that no polygons will be displayed !!
-    --   When <ARatio> is > 0 & < 1. the corresponding amount
-    --   of object polygons will be displayed with a random method.
-    --  Warning: the degenerate structure is shown only when
-    -- the animation and degenerate flags are set to TRUE
-    -- in V3d_View::SetAnimationMode(..)
-    ---Category: Methods to manage the object degeneration
-
-    SetDegenerateModel (
-     me         : mutable;
-     aModel     : TypeOfDegenerateModel from Aspect;
-     aSkipRatio : Ratio                 from Quantity = 0.0
-    ) is static;
-    ---Purpose: Defines the degenerate method to apply on the shaded 
-    --  representation of all objects.
 
     SetLocalAttributes(me      : mutable; 
                       aniobj  : InteractiveObject from AIS;
@@ -710,8 +665,8 @@ is
     SetPolygonOffsets ( me : mutable;
                anObj        : InteractiveObject from AIS;
                aMode        : Integer from Standard;
-               aFactor      : Real from Standard = 1.0;
-               aUnits       : Real from Standard = 0.0;
+               aFactor      : ShortReal from Standard = 1.0;
+               aUnits       : ShortReal from Standard = 0.0;
        updateviewer : Boolean from Standard = Standard_True ) is static;
     ---Purpose: Sets up polygon offsets for the given AIS_InteractiveObject.
     --          It simply calls anObj->SetPolygonOffsets() 
@@ -728,8 +683,8 @@ is
     PolygonOffsets ( me;
                anObj   : InteractiveObject from AIS;
                aMode   : out Integer from Standard;
-               aFactor : out Real from Standard;
-               aUnits  : out Real from Standard ) is static;
+               aFactor : out ShortReal from Standard;
+               aUnits  : out ShortReal from Standard ) is static;
     ---Level: Public
     ---Purpose: Retrieves current polygon offsets settings for <anObj>.
     ---Category: Inquire methods
@@ -779,8 +734,7 @@ is
     ---Purpose: Returns the display status of the entity anIobj.
 -- This will be one of the following:
 -- -   DS_Displayed   displayed in main viewer
--- -   DS_Erased   erased in the Collector
--- -   DS_FullErased   erased everywhere but in the Collector
+-- -   DS_Erased   hidden in main viewer
 -- -   DS_Temporary   temporarily displayed
 -- -   DS_None   nowhere displayed.
 
@@ -810,17 +764,12 @@ is
     --          <WithColor> will be returned TRUE
     --          <theHiCol> gives the name of the hilightcolor
 
-    IsInCollector(me;anIObj:InteractiveObject from AIS)
-    returns Boolean from Standard;
----Purpose:
--- Returns true if the entity anIobj is in the Collector viewer.
-    
     DisplayPriority(me;anIobj: InteractiveObject from AIS)
     returns Integer from Standard;
 ---Purpose:
 -- Returns the display priority of the entity anIobj. This
 -- will be display   mode of anIobj if it is in the main
--- viewer, and the highlight mode if it is in the Collector viewer.
+-- viewer.
 
     HasColor(me; aniobj: InteractiveObject from AIS)
     returns Boolean from Standard;
@@ -854,11 +803,6 @@ is
 -- are called current objects; those selected in open
 -- local context, selected objects.   
 
-    UpdateCollector(me:mutable);
----Purpose: Updates the Collector viewer.
-
-
-
                    ---Category: General Attributes for the session
 
     DisplayMode(me)        returns Integer     from Standard;
@@ -1140,25 +1084,28 @@ is
     --          is changed.
     --          When <globalChange> is FALSE , only the current group
     --          of the object presentation is changed.
-    --         Updates the viewer or collector when <updateViewer> is TRUE
+    --         Updates the viewer when <updateViewer> is TRUE
     ---Category: Graphic attributes management
 
            ---Category: GRAPHIC DETECTION  / SELECTION
 
-
-    MoveTo(me:mutable;XPix,YPix:Integer from Standard;aView:View from V3d)
+    MoveTo (me                  : mutable;
+            theXPix, theYPix    : Integer from Standard;
+            theView             : View from V3d;
+            theToRedrawOnUpdate : Boolean from Standard = Standard_True)
     returns StatusOfDetection from AIS;
----Purpose: Relays mouse position in pixels XPix and YPix to the
--- interactive context selectors. This is done by the view
--- aView passing this position to the main viewer and updating it.
--- Functions in both Neutral Point and local contexts.
-
+    ---Purpose: Relays mouse position in pixels theXPix and theYPix to the interactive context selectors.
+    -- This is done by the view theView passing this position to the main viewer and updating it.
+    -- Functions in both Neutral Point and local contexts.
+    -- If theToRedrawOnUpdate is set to false, callee should call RedrawImmediate() to highlight detected object.
 
     HasNextDetected(me) returns Boolean from Standard;
     ---Purpose: returns True  if other entities  were detected  in the
     --          last mouse detection
 
-    HilightNextDetected(me:mutable;aView:View from V3d) 
+    HilightNextDetected (me                   : mutable;
+                         theView              : View from V3d;
+                         theToRedrawImmediate : Boolean from Standard = Standard_True)
     returns Integer from Standard;
     ---Purpose: if more than 1 object is detected by the selector,
     --          only the "best" owner is hilighted at the mouse position.
@@ -1171,7 +1118,9 @@ is
     --                    have been hilighted , the next call will hilight
     --                    the first one again 
 
-    HilightPreviousDetected(me:mutable;aView:View from V3d)
+    HilightPreviousDetected (me                   : mutable;
+                             theView              : View from V3d;
+                             theToRedrawImmediate : Boolean from Standard = Standard_True)
     returns Integer from Standard;
     ---Purpose: Same as previous methods in reverse direction...
 
@@ -1688,52 +1637,31 @@ is
         --           4.EndImmediateDraw()      draws all the stored objects...
         --           
 
-    BeginImmediateDraw (me:mutable)  returns Boolean from Standard;
+    BeginImmediateDraw (me : mutable)
+    returns Boolean from Standard;
     ---Purpose: initializes the list of presentations to be displayed
     --          returns False if No Local COnte
 
-    ImmediateAdd (me:mutable;anIObj:InteractiveObject from AIS;aMode:Integer from Standard=0)
+    ImmediateAdd (me      : mutable;
+                  theObj  : InteractiveObject from AIS;
+                  theMode : Integer from Standard = 0)
     returns Boolean from Standard;
     ---Purpose: returns True if <anIObj> has been stored in the list.
 
-    ImmediateRemove (me:mutable;anIObj:InteractiveObject from AIS;aMode:Integer from Standard=0)
-    returns Boolean from Standard;
-    ---Purpose: returns True if <anIObj> has been removed from the list.
-
-    EndImmediateDraw(me:mutable;aView : View from V3d;DoubleBuf:Boolean from Standard=Standard_False)
+    EndImmediateDraw (me      : mutable;
+                      theView : View from V3d)
     returns Boolean from Standard;
     ---Purpose: returns True if the immediate display has been done.
-    EndImmediateDraw(me:mutable;DoubleBuf:Boolean from Standard=Standard_False)
+
+    EndImmediateDraw (me : mutable)
     returns Boolean from Standard;
-    ---Purpose: Uses the First Active View of Main Viewer!!!
+    ---Purpose: Uses the First Active View of Main Viewer!
     --          returns True if the immediate display has been done.
 
     IsImmediateModeOn(me) returns Boolean from Standard;
 
-    Drag ( me : mutable;
-                aView: View from V3d;
-                anObject: InteractiveObject from AIS;
-                aTranformation: Transformation from Geom;
-                postConcatenate: Boolean from Standard = Standard_False;
-                update: Boolean from Standard = Standard_False;
-                zBuffer: Boolean from Standard = Standard_False)
-    is static;
-    ---Level: Public
-    ---Purpose: Transforms the current presentation of the object <anObject>
-    --          using the transient graphic space of the view <aView> in
-    --          immediat mode graphics.
-    ---Warning: When  <update> is TRUE, then the view is redrawn with ALL
-    --          transformed presentations.
-    --          When <zBuffer> is TRUE  all transient graphic are drawn
-    --          using zbuffer activity.
-    --          Note that when <update> is TRUE the view is cleared and redrawn
-    --          and soforth the Z buffer is always activated therefore the <zBuffer>
-    --          parameter is ignored in this case.
-
-
            ---Category: Activation/Deactivation of Selection Modes.
 
-
     SetAutomaticHilight(me:mutable;aStatus:Boolean);
 ---Purpose:
 -- Sets the highlighting status aStatus of detected and
@@ -1942,30 +1870,9 @@ is
     --          by Default, <WhichSignature> = -1 means 
     --          control only on <WhichKind>.
 
-    Collector(me) returns any Viewer from V3d;
-    ---C++: return const &
-    ---C++: inline
-    
-    ObjectsInCollector (me;aListOfIO : in out ListOfInteractive from AIS);
-    ---Purpose:
-    -- Returns the list aListOfIO of erased objects of a
-    -- particular Type WhichKind and Signature WhichSignature.
-    -- By Default, WhichSignature equals 1. This means
-    -- that there is a check on type only.
-
-    ObjectsInCollector (me;
-                       WhichKind :KindOfInteractive from AIS; 
-                       WhichSignature :Integer from Standard;
-                        aListOfIO : in out ListOfInteractive from AIS);
-    ---Purpose: gives the list of erased objects of a particular
-    --          Type and signature
-    --          by Default, <WhichSignature> = -1 means 
-    --          control only on <WhichKind>.
-
-    
     ErasedObjects (me;theListOfIO : in out ListOfInteractive from AIS);
     ---Purpose:
-    -- Returns the list theListOfIO of erased objects (but not placed into collecter)
+    -- Returns the list theListOfIO of erased objects (hidden objects)
     -- particular Type WhichKind and Signature WhichSignature.
     -- By Default, WhichSignature equals 1. This means
     -- that there is a check on type only.
@@ -1974,7 +1881,7 @@ is
                        WhichKind :KindOfInteractive from AIS; 
                        WhichSignature :Integer from Standard;
                         theListOfIO : in out ListOfInteractive from AIS);
-    ---Purpose: gives the list of erased objects (but not placed into collecter)
+    ---Purpose: gives the list of erased objects (hidden objects)
     --          Type and signature
     --          by Default, <WhichSignature> = -1 means 
     --          control only on <WhichKind>.
@@ -2033,9 +1940,7 @@ is
 
     DomainOfMainViewer(me) returns CString from Standard;
     ---Purpose: Returns the domain name of the main viewer.
-    DomainOfCollector(me) returns CString from Standard;
-    ---Purpose: Returns the domain name of the Collector viewer.
-    
+
            ---Category: Internal
 
         ---Category: Internal
@@ -2057,24 +1962,13 @@ is
     MainPrsMgr     (me) returns any PresentationManager3d from PrsMgr;
     ---C++: inline
     ---C++: return const &
-    CollectorPrsMgr(me) returns any PresentationManager3d from PrsMgr;
-    ---C++: inline
-    ---C++: return const &
-
 
     MainSelector(me) returns any ViewerSelector3d from StdSelect;
     ---C++: inline
     ---C++: return const &
     LocalSelector(me) returns any ViewerSelector3d from StdSelect;
 
-
-    CollectorSelector(me)  returns any ViewerSelector3d from StdSelect;
-    ---C++: inline
-    ---C++: return const &   
-
-
-
-    PurgeDisplay(me:mutable;CollectorToo:Boolean from Standard = Standard_False) 
+    PurgeDisplay(me:mutable) 
     returns Integer from Standard;
     ---Level: Internal 
     ---Purpose: Clears all the structures which don't
@@ -2110,9 +2004,8 @@ is
 
 
     EraseGlobal(me             : mutable;
-               anObj          : InteractiveObject from AIS;
-               updateviewer   : Boolean from Standard = Standard_True;
-               PutInCollector : Boolean from Standard = Standard_False) is static private;
+                anObj          : InteractiveObject from AIS;
+                updateviewer   : Boolean from Standard = Standard_True) is static private;
                
     ClearGlobal(me             : mutable;
                anObj          : InteractiveObject from AIS;
@@ -2151,12 +2044,6 @@ fields
     myMainVwr    : Viewer from V3d;
     myMainSel    : ViewerSelector3d from StdSelect;
 
-    myCollectorPM  : PresentationManager3d from PrsMgr;  
-    myCollectorVwr : Viewer from V3d;
-    myCollectorSel : ViewerSelector3d from StdSelect;
-
-    myIsCollClosed : Boolean from Standard;
-
     -- the selection and current objects.
 
     mySelectionName : AsciiString from TCollection;
@@ -2164,7 +2051,6 @@ fields
 
     myLastPicked    : InteractiveObject from AIS;    
     myLastinMain    : InteractiveObject from AIS;
-    myLastinColl    : InteractiveObject from AIS;
     
     
     myWasLastMain       : Boolean from Standard;