1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-09-03 14:10:33 +03:00
Files
occt/src/SelectMgr/SelectMgr_SelectableObject.lxx
vpa c3282ec170 0026272: Visualization - provide a possibility to activate selection modes without opening local context
- picked or selected objects are now highlighted via owners instead of interactive objects;
- support methods for owners were added to AIS_InteractiveContext;
- dynamically highlighted owners are now displayed in immediate mode;
- selection without opening of local context is enabled by default;
- added "-local" key to vselmode command to enable selection in local context;
- selection filters are now completely supported in AIS_InteractiveContext;
- the idea of differencing of selected items onto current (in interactive context) and selected (local selection) was eliminated;
- all calls to "current" were replaced by calls to "selected" in terms of future local context removal;
- AIS_InteractiveObject::mySelectionMode was removed;
- now each selectable object can define own selection mode for "global" selection of the whole object;
- whole object selection mode is 0 by default for all standard interactive objects;
- immediate structures are now added to topmost and top layer lists;
- added support of drawing immediate structures in different layers;
- unused code for immediate mode was removed;
- vfeedback and vexport commands now produce correct output for raytrace mode.
2015-07-31 14:38:19 +03:00

53 lines
1.9 KiB
Plaintext

// Copyright (c) 1998-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.
inline void SelectMgr_SelectableObject::Init()
{mycurrent=1;}
inline Standard_Boolean SelectMgr_SelectableObject::More() const
{return (mycurrent<=myselections.Length());}
inline void SelectMgr_SelectableObject::Next()
{mycurrent++;}
inline const Handle(SelectMgr_Selection)& SelectMgr_SelectableObject::
CurrentSelection() const
{return myselections(mycurrent);}
inline const Handle(Prs3d_Drawer)& SelectMgr_SelectableObject::
Attributes() const
{return myDrawer;}
inline const Handle(Prs3d_Drawer)& SelectMgr_SelectableObject::
HilightAttributes() const
{return myHilightDrawer;}
//=======================================================================
//function : GlobalSelectionMode
//purpose :
//=======================================================================
inline Standard_Integer SelectMgr_SelectableObject::GlobalSelectionMode() const
{
return myGlobalSelMode;
}
//=======================================================================
//function : setGlobalSelMode
//purpose :
//=======================================================================
inline void SelectMgr_SelectableObject::setGlobalSelMode (const Standard_Integer theMode)
{
myGlobalSelMode = theMode > 0 ? theMode : 0;
}