X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSVTK%2FSVTK_Selector.h;h=7b33b3d36964c9b6579b1bb4fa7678ad57c6c57e;hb=855f4002aa71d468682a50c484a19579a51bf78c;hp=497e35fd574d808e2f9461cf3f4956336e2c46d1;hpb=c4b058d18583af7f94042eb55d4b933dd222d2e6;p=modules%2Fgui.git diff --git a/src/SVTK/SVTK_Selector.h b/src/SVTK/SVTK_Selector.h index 497e35fd5..7b33b3d36 100644 --- a/src/SVTK/SVTK_Selector.h +++ b/src/SVTK/SVTK_Selector.h @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -29,20 +29,22 @@ #include "SVTK.h" #include "SVTK_Selection.h" +#include "SVTK_Hash.h" + #include "SALOME_ListIO.hxx" +#include + #include #include #include -class Handle(VTKViewer_Filter); - +class SALOME_InteractiveObject; class SALOME_Actor; class SVTK_SelectionEvent; class vtkActorCollection; class vtkRenderer; -class Handle(SALOME_InteractiveObject); //! Define an abstract interface for selection in SVTK package /*! @@ -168,6 +170,48 @@ public: void ClearIndex() = 0; + /// ! Composite indexes + virtual + bool + HasCompositeIndex(const Handle(SALOME_InteractiveObject)& theIO ) const = 0; + + //! Get composite indexes of subslection for given #SALOME_InteractiveObject + virtual + void + GetCompositeIndex( const Handle(SALOME_InteractiveObject)& theIO, + SVTK_IndexedMapOfIds& theIds ) = 0; + + //! Change composite indices of subselection for given #SALOME_InteractiveObject + virtual + bool + AddOrRemoveCompositeIndex( const Handle(SALOME_InteractiveObject)& theIO, + const SVTK_IndexedMapOfIds& theIds, + bool theIsModeShift) = 0; + + //! Change composite index of subslection for given #SALOME_InteractiveObject + virtual + bool + AddOrRemoveCompositeIndex( const Handle(SALOME_InteractiveObject)& theIO, + SVTK_ListOfInteger ids, + bool theIsModeShift) = 0; + + //! Change composite index of subslection for given #SALOME_InteractiveObject + virtual + void + RemoveCompositeIndex( const Handle(SALOME_InteractiveObject)& theIO, + SVTK_ListOfInteger ids ) = 0; + + //! Check, if the given composite index is present in subselection + virtual + bool + IsCompositeIndexSelected(const Handle(SALOME_InteractiveObject)& theIO, + SVTK_ListOfInteger ids ) const = 0; + + //! Clear composite indexes subselection + virtual + void + ClearCompositeIndex() = 0; + //---------------------------------------------------------------------------- typedef int TFilterID;