0030737: Visualization - implementing new selection schemes in context AIS_SelectionScheme enumeration is defined to set which selection behaviour is used in Select of context AIS_InteractiveContext is corrected to use single Select method instead of combination of Select/ShiftSelect methods with a selection scheme parameter. Upgrade: Select() -> SelectDetected/Rectangle/Polygon(AIS_SelectionScheme_Replace), ShiftSelect -> SelectDetected/Rectangle/Polygon(AIS_SelectionScheme_XOR)
0030726: Visualization - change Selected state of owner in AIS_Selection AIS_InteractiveContext::IsHilighted() behavior has been changed. It should use the same logic for owner processing like when it is highlighted. IsSelected of owner is used for selection state, not highlight. Without this correction, object is never shown as selected by click (Select(bool)): if (!HighlightStyle (theOwner, aCustomStyle) || (!aCustomStyle.IsNull() && aCustomStyle != anObjSelStyle)) IsSelected is already true, so the highlight style is equal to selection style, nothing to do.
0028987: Visualization, SelectMgr_SelectableObject - move out iterator from object Added method SelectMgr_SelectableObject::Selections() and depreacted methods Init(), More(), Next() and CurrentSelection(). Added method SelectMgr_Selection::Entities() and depreacted methods Init(), More(), Next() and Sensitivity(). SelectMgr_SelectableObject::myAssemblyOwner has been moved to AIS_MultipleConnectedInteractive. SelectMgr_SelectableObject::Selection() now returns NULL handle for not found selection. SelectMgr_SelectableObject::HasSelection() is no more virtual and just retuns !Selection().IsNull(). SelectMgr_SelectionManager::mySelectors map is now declared using proper key type Handle(SelectMgr_ViewerSelector) instead of Handle(Standard_Transient).
0027805: Visualization - AIS_InteractiveContext::FitSelected() is broken for global selection AIS_Selection class has been cleaned up: - SelectMgr_EntityOwner is now used in interface instead of Standard_Transient. - Method ::Select() has been renamed to ::Clear() for clarity. - Dropped unused class fields. - Owners without Selectable are not added to the list (should never happen). SelectMgr_SelectableObject::BndBoxOfSelected() has been modified to properly compute bounding box of ALL selection Entities for specified Owner (only first Entity has been used before the patch). Methods of AIS_InteractiveContext::DisplaySelected(), ::SetSelectedAspect(), ::FitSelected(), ::SubIntensityOff() have been fixed (wrong DownCast). AIS_InteractiveContext::AddSelect() now handles properly AIS_InteractiveObject as argument.
0026886: Visualization, TKV3d - eliminate global variables - AIS_InteractiveContext - create new dummy class field to have an empty TopoDS_Shape object. - AIS_Point, PrsMgr_PresentableObject - rename static variables to local function variables. - AIS_Shape, SelectMgr_SelectableObject - remove unused static variables. - Graphic3d_MaterialAspect, V3d_Viewer - make global static variables as constant. - V3d_View - move global variable zRotation to class field. - Move a variable theCurrentSelection as a field of AIS_InteractiveContext and AIS_LocalContext classes. Multiple selection is not used now, so each Context have an own selection. - Move myStructGenId from Graphic3d_StructureManager to Graphic3d_GraphicDriver for identifying the structures in the driver. - Move default variable (no shading light) from static value to the class field of OpenGL_View. Porting note: - Static methods of AIS_Selection is not used now. Methods of AIS_InteractiveContext::InitSelected(),::MoreSelected(),::NextSelected() should be used instead of static methods of AIS_Selection.
0024002: Overall code and build procedure refactoring -- automatic Automatic upgrade of OCCT code by command "occt_upgrade . -nocdl": - WOK-generated header files from inc and sources from drv are moved to src - CDL files removed - All packages are converted to nocdlpack
0024023: Revamp the OCCT Handle -- downcast (automatic) Automatic update by command "occt_upgrade . -downcast" C-style cast of Handle to that of derived type (now illegal) is replaced by call to DownCast() Const reference local variables of Handle type initialized by result of DownCast are replaced by normal variables.
0024624: Lost word in license statement in source files License statement text corrected; compiler warnings caused by Bison 2.41 disabled for MSVC; a few other compiler warnings on 54-bit Windows eliminated by appropriate type cast Wrong license statements corrected in several files. Copyright and license statements added in XSD and GLSL files. Copyright year updated in some files. Obsolete documentation files removed from DrawResources.