Version: 9.16.0
LightApp_VTKSelector.h
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5//
6// This library is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10//
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19//
20// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21//
22
23#ifndef LIGHTAPP_VTKSELECTOR_H
24#define LIGHTAPP_VTKSELECTOR_H
25
26#include "SUIT_Selector.h"
27#include "LightApp.h"
28#include "LightApp_DataOwner.h"
29
30#include <QObject>
31
32class SUIT_Desktop;
33
34#ifndef DISABLE_VTKVIEWER
35 #include <TColStd_IndexedMapOfInteger.hxx>
36 #include "SVTK_Hash.h"
37 #include "SVTK_Selection.h"
38#ifndef DISABLE_SALOMEOBJECT
40#endif
41 class SALOME_Actor;
42 class SVTK_ViewWindow;
44#endif
45
50{
51 public:
53#ifndef DISABLE_VTKVIEWER
54 #ifndef DISABLE_SALOMEOBJECT
56 #else
57 LightApp_SVTKDataOwner( const QString& );
58 #endif
59
61 const SVTK_TIndexedMapOfVtkId& GetIds() const;
62
64 Selection_Mode GetMode() const;
65
67 SALOME_Actor* GetActor() const;
68
69 protected:
71
72 SVTK_ViewWindow* GetActiveViewWindow() const;
74#endif
75};
76
77
83{
84 Q_OBJECT
85
86public:
88#ifndef DISABLE_VTKVIEWER
90
91 SVTK_ViewModelBase* viewer() const;
92
93 virtual QString type() const;
94#else
96#endif
97
98private slots:
99 void onSelectionChanged();
100
101#ifndef DISABLE_VTKVIEWER
102protected:
103 virtual void getSelection( SUIT_DataOwnerPtrList& ) const;
104 virtual void setSelection( const SUIT_DataOwnerPtrList& );
105
106private:
108
109#endif
110};
111
112#endif
#define LIGHTAPP_EXPORT
Definition: LightApp.h:36
Selection_Mode
Definition: SALOME_Selection.h:27
NCollection_IndexedMap< vtkIdType, svtkIdHasher > SVTK_TIndexedMapOfVtkId
Definition: SVTK_Hash.h:153
Definition: LightApp_DataOwner.h:38
const Handle(SALOME_InteractiveObject) &IO() const
Definition: LightApp_VTKSelector.h:50
virtual ~LightApp_SVTKDataOwner()
Definition: LightApp_VTKSelector.h:52
SUIT_Desktop * myDesktop
Definition: LightApp_VTKSelector.h:73
SVTK_TIndexedMapOfVtkId myIds
Definition: LightApp_VTKSelector.h:70
Definition: LightApp_VTKSelector.h:83
virtual ~LightApp_VTKSelector()
Definition: LightApp_VTKSelector.h:87
SVTK_ViewModelBase * myViewer
Definition: LightApp_VTKSelector.h:107
For more information see QT documentation.
The class is a basic one for all SALOME VTK presentation.
Definition: SALOME_Actor.h:73
Manage list of SUIT_DataOwnerPtr.
Definition: SUIT_DataOwner.h:67
Definition: SUIT_Desktop.h:47
Definition: SUIT_SelectionMgr.h:39
Definition: SUIT_Selector.h:44
To define minimal interface for SVTK_ViewWindow initialization.
Definition: SVTK_ViewModelBase.h:34
Define a container for SALOME VTK view window.
Definition: SVTK_ViewWindow.h:86