Version: 8.3.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
GraphicsView_ViewTransformer.h
Go to the documentation of this file.
1
// Copyright (C) 2013-2016 CEA/DEN, EDF R&D, OPEN CASCADE
2
//
3
// This library is free software; you can redistribute it and/or
4
// modify it under the terms of the GNU Lesser General Public
5
// License as published by the Free Software Foundation; either
6
// version 2.1 of the License, or (at your option) any later version.
7
//
8
// This library is distributed in the hope that it will be useful,
9
// but WITHOUT ANY WARRANTY; without even the implied warranty of
10
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
// Lesser General Public License for more details.
12
//
13
// You should have received a copy of the GNU Lesser General Public
14
// License along with this library; if not, write to the Free Software
15
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
//
17
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18
//
19
20
#ifndef GRAPHICSVIEW_VIEWTRANSFORMER_H
21
#define GRAPHICSVIEW_VIEWTRANSFORMER_H
22
23
#include "
GraphicsView.h
"
24
25
#include <QCursor>
26
#include <QObject>
27
28
class
QRectF;
29
class
QRubberBand;
30
31
class
GraphicsView_Viewer
;
32
33
/*
34
Class : GraphicsView_ViewTransformer
35
Description : View transformer of the graphics view
36
*/
37
class
GRAPHICSVIEW_API
GraphicsView_ViewTransformer
:
public
QObject
38
{
39
public
:
40
GraphicsView_ViewTransformer
(
GraphicsView_Viewer
*,
int
type );
41
~
GraphicsView_ViewTransformer
();
42
43
public
:
44
int
type()
const
;
45
46
static
int
accelKey
() {
return
acccelKey; }
47
static
void
setAccelKey
(
int
k ) { acccelKey = k; }
48
49
static
int
zoomButton
() {
return
zoomBtn; }
50
static
void
setZoomButton
(
int
b ) { zoomBtn = b; }
51
52
static
int
panButton
() {
return
panBtn; }
53
static
void
setPanButton
(
int
b ) { panBtn = b; }
54
55
static
int
panGlobalButton
() {
return
panGlobalBtn; }
56
static
void
setPanGlobalButton
(
int
b ) { panGlobalBtn = b; }
57
58
static
int
fitRectButton
() {
return
fitRectBtn; }
59
static
void
setFitRectButton
(
int
b ) { fitRectBtn = b; }
60
61
virtual
void
exec();
62
virtual
bool
eventFilter(
QObject
*,
QEvent
* );
63
64
protected
:
65
enum
TransformState
{ Begin,
InProcess
,
Finished
};
66
virtual
void
onTransform( TransformState );
67
void
initTransform(
bool
);
68
69
void
drawRect(
const
QRectF& theRect );
70
void
endDrawRect();
71
72
protected
:
73
static
int
panBtn
;
74
static
int
zoomBtn
;
75
static
int
fitRectBtn
;
76
static
int
panGlobalBtn
;
77
78
static
int
acccelKey
;
79
80
GraphicsView_Viewer
*
myViewer
;
81
int
myType
;
82
QCursor
mySavedCursor
;
83
bool
mySavedMouseTrack
;
84
QPointF
myStart
;
85
QPointF
myCurr
;
86
int
myButtonState
;
87
int
myMajorBtn
;
88
89
QRubberBand*
myRectBand
;
90
};
91
92
#endif
src
GraphicsView
GraphicsView_ViewTransformer.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