Version: 8.3.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
SALOME GUI Developer
Todo List
Namespaces
Classes
Files
File List
idl
src
CAF
CAM
CASCatch
DDS
Event
GLViewer
GraphicsView
GuiHelpers
HelpBrowser
ImageComposer
LightApp
LogWindow
ObjBrowser
OBJECT
OCCViewer
OpenGLUtils
Plot2d
Prs
PVServerService
PVViewer
PyViewer
QDS
Qtx
QxScene
SALOME_PY
SALOME_PYQT
SALOME_SWIG
SalomeApp
Session
SOCC
SPlot2d
STD
Style
SUIT
SUIT.h
SUIT_Accel.cxx
SUIT_Accel.h
SUIT_ActionOperation.cxx
SUIT_ActionOperation.h
SUIT_Application.cxx
SUIT_Application.h
SUIT_CameraProperties.cxx
SUIT_CameraProperties.h
SUIT_DataBrowser.cxx
SUIT_DataBrowser.h
SUIT_DataObject.cxx
SUIT_DataObject.h
SUIT_DataObjectIterator.cxx
SUIT_DataObjectIterator.h
SUIT_DataObjectKey.cxx
SUIT_DataObjectKey.h
SUIT_DataOwner.cxx
SUIT_DataOwner.h
SUIT_Desktop.cxx
SUIT_Desktop.h
SUIT_ExceptionHandler.cxx
SUIT_ExceptionHandler.h
SUIT_FileDlg.cxx
SUIT_FileDlg.h
SUIT_FileValidator.cxx
SUIT_FileValidator.h
SUIT_LicenseDlg.cxx
SUIT_LicenseDlg.h
SUIT_MessageBox.cxx
SUIT_MessageBox.h
SUIT_Operation.cxx
SUIT_Operation.h
SUIT_OverrideCursor.cxx
SUIT_OverrideCursor.h
SUIT_PopupClient.cxx
SUIT_PopupClient.h
SUIT_PreferenceMgr.cxx
SUIT_PreferenceMgr.h
SUIT_ResourceMgr.cxx
SUIT_ResourceMgr.h
SUIT_SelectionFilter.cxx
SUIT_SelectionFilter.h
SUIT_SelectionMgr.cxx
SUIT_SelectionMgr.h
SUIT_Selector.cxx
SUIT_Selector.h
SUIT_Session.cxx
SUIT_Session.h
SUIT_ShortcutMgr.cxx
SUIT_ShortcutMgr.h
SUIT_SmartPtr.h
SUIT_Study.cxx
SUIT_Study.h
SUIT_Tools.cxx
SUIT_Tools.h
SUIT_TreeModel.cxx
SUIT_TreeModel.h
SUIT_TreeSync.h
SUIT_ViewManager.cxx
SUIT_ViewManager.h
SUIT_ViewModel.cxx
SUIT_ViewModel.h
SUIT_ViewWindow.cxx
SUIT_ViewWindow.h
SUITApp
SVTK
TOOLSGUI
TreeData
ViewerData
ViewerTools
VTKViewer
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
SUIT_ViewManager.h
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, 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 SUIT_VIEWMANAGER_H
24
#define SUIT_VIEWMANAGER_H
25
26
#include "
SUIT.h
"
27
28
#include "
SUIT_PopupClient.h
"
29
30
#include <QObject>
31
#include <QPixmap>
32
#include <QVector>
33
#include <QPointer>
34
35
class
QMenu
;
36
class
QMouseEvent;
37
class
QWheelEvent;
38
class
QKeyEvent;
39
40
class
SUIT_Study
;
41
class
SUIT_Desktop
;
42
class
SUIT_ViewModel
;
43
class
SUIT_ViewWindow
;
44
45
#ifdef WIN32
46
#pragma warning( disable:4251 )
47
#endif
48
49
class
SUIT_EXPORT
SUIT_ViewManager
:
public
QObject
,
public
SUIT_PopupClient
50
{
51
Q_OBJECT
52
public
:
53
SUIT_ViewManager
(
SUIT_Study
*,
54
SUIT_Desktop
*,
55
SUIT_ViewModel
* = 0 );
56
virtual
~
SUIT_ViewManager
();
57
58
virtual
QString
popupClientType
()
const
{
return
getType(); }
59
virtual
void
contextMenuPopup
(
QMenu
* );
60
61
void
setViewModel(
SUIT_ViewModel
* theViewModel);
62
SUIT_ViewModel
*
getViewModel
() {
return
myViewModel; }
63
64
SUIT_Study
* study()
const
;
65
66
QString getType()
const
;
67
SUIT_ViewWindow
*
getActiveView
() {
return
myActiveView; }
68
69
int
getViewsCount
() {
return
myViews.count(); }
70
QVector<SUIT_ViewWindow*> getViews()
const
;
71
72
QString
getTitle
()
const
{
return
myTitle; }
73
virtual
void
setTitle(
const
QString& );
74
75
QPixmap
getIcon
()
const
{
return
myIcon; }
76
virtual
void
setIcon(
const
QPixmap& );
77
78
SUIT_ViewWindow
* createViewWindow();
79
80
bool
isVisible()
const
;
81
virtual
void
setShown(
const
bool
);
82
virtual
void
setDestructiveClose(
const
bool
);
83
84
int
getId()
const
;
85
86
int
getGlobalId()
const
;
87
void
setDetached(
bool
detached);
88
bool
getDetached()
const
;
89
90
public
slots:
91
void
createView();
92
void
closeAllViews();
93
94
signals:
95
void
lastViewClosed(
SUIT_ViewManager
*);
96
void
tryCloseView(
SUIT_ViewWindow
*);
97
void
deleteView(
SUIT_ViewWindow
*);
98
void
viewCreated(
SUIT_ViewWindow
*);
99
void
mousePress(
SUIT_ViewWindow
*, QMouseEvent*);
100
void
mouseRelease(
SUIT_ViewWindow
*, QMouseEvent*);
101
void
mouseDoubleClick(
SUIT_ViewWindow
*, QMouseEvent*);
102
void
mouseMove(
SUIT_ViewWindow
*, QMouseEvent*);
103
void
wheel(
SUIT_ViewWindow
*, QWheelEvent*);
104
void
keyPress(
SUIT_ViewWindow
*, QKeyEvent*);
105
void
keyRelease(
SUIT_ViewWindow
*, QKeyEvent*);
106
void
activated(
SUIT_ViewManager
*);
107
108
protected
slots:
109
void
onWindowActivated(
SUIT_ViewWindow
*);
110
void
onClosingView(
SUIT_ViewWindow
* );
111
void
onMousePressed(
SUIT_ViewWindow
*, QMouseEvent* );
112
void
onDeleteStudy();
113
114
private
slots:
115
void
onContextMenuRequested( QContextMenuEvent* e );
116
117
protected
:
121
virtual
bool
insertView(
SUIT_ViewWindow
* theView);
122
124
virtual
void
removeView(
SUIT_ViewWindow
* theView);
125
127
virtual
void
closeView(
SUIT_ViewWindow
* theView);
128
130
virtual
void
setViewName(
SUIT_ViewWindow
* theView );
131
QString prepareTitle(
const
QString&,
const
int
,
const
int
);
132
133
static
int
useNewId(
const
QString& );
134
135
protected
:
136
typedef
QPointer<SUIT_ViewWindow>
ViewWindow
;
137
138
protected
:
139
SUIT_Desktop
*
myDesktop
;
140
SUIT_ViewModel
*
myViewModel
;
141
QVector<ViewWindow>
myViews
;
142
SUIT_ViewWindow
*
myActiveView
;
143
144
int
myId
;
145
QPixmap
myIcon
;
146
QString
myTitle
;
147
SUIT_Study
*
myStudy
;
148
bool
myIsDetached
;
149
150
static
QMap<QString, int>
_ViewMgrId
;
151
};
152
153
#ifdef WIN32
154
#pragma warning( default:4251 )
155
#endif
156
157
#endif
src
SUIT
SUIT_ViewManager.h
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS