Developer documentation | Axl-2.5.1

axlParameterSpace.h
Go to the documentation of this file.
1 /* axlParameterSpace.h ---
2  *
3  * Author: Julien Wintz
4  * Copyright (C) 2008 - Julien Wintz, Inria.
5  * Created: Mon Mar 28 13:53:28 2011 (+0200)
6  * Version: $Id$
7  * Last-Updated: Mon Mar 28 16:41:06 2011 (+0200)
8  * By: Julien Wintz
9  * Update #: 25
10  */
11 
12 /* Commentary:
13  *
14  */
15 
16 /* Change log:
17  *
18  */
19 
20 #ifndef AXLPARAMETERSPACE_H
21 #define AXLPARAMETERSPACE_H
22 
23 #include <QtGui>
24 #include <QtWidgets>
25 
26 #include "axlGuiExport.h"
27 
28 // /////////////////////////////////////////////////////////////////
29 //
30 // /////////////////////////////////////////////////////////////////
31 
32 class axlParameterSpaceViewPrivate;
33 
34 class AXLGUI_EXPORT axlParameterSpaceView : public QGraphicsView
35 {
36  Q_OBJECT
37 
38 public:
39  axlParameterSpaceView(QWidget *parent = 0);
40  ~axlParameterSpaceView(void);
41 
42 private:
43  axlParameterSpaceViewPrivate *d;
44 };
45 
46 // /////////////////////////////////////////////////////////////////
47 //
48 // /////////////////////////////////////////////////////////////////
49 
50 class axlParameterSpaceScenePrivate;
51 
52 class AXLGUI_EXPORT axlParameterSpaceScene : public QGraphicsScene
53 {
54  Q_OBJECT
55 
56 public:
57  axlParameterSpaceScene(QObject *parent = 0);
59 
60  void resize(QSize size);
61 
62  void setRangeU(double min, double max);
63  void setRangeV(double min, double max);
64  void setRangeW(double min, double max);
65 
66 signals:
67  void showCurrentPoint(double u, double v);
68  void moveCurrentPoint(double u, double v);
69  void hideCurrentPoint(double u, double v);
70  void update();
71 
72 protected:
73  void mouseMoveEvent(QGraphicsSceneMouseEvent *mouseEvent);
74  void mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent);
75  void mouseReleaseEvent(QGraphicsSceneMouseEvent *mouseEvent);
76 
77 private:
78  axlParameterSpaceScenePrivate *d;
79 };
80 
81 // /////////////////////////////////////////////////////////////////
82 //
83 // /////////////////////////////////////////////////////////////////
84 
85 class axlParameterSpacePrivate;
86 
87 class AXLGUI_EXPORT axlParameterSpace : public QFrame
88 {
89  Q_OBJECT
90 
91 public:
92  axlParameterSpace(QWidget *parent = 0);
93  ~axlParameterSpace(void);
94 
95  void setRangeU(double min, double max);
96  void setRangeV(double min, double max);
97  void setRangeW(double min, double max);
98 
99 signals:
100  void showCurrentPoint(double u, double v);
101  void moveCurrentPoint(double u, double v);
102  void hideCurrentPoint(double u, double v);
103  void update();
104 
105 protected:
106  void resizeEvent(QResizeEvent *event);
107 
108 private:
109  axlParameterSpacePrivate *d;
110 };
111 
112 #endif
#define AXLGUI_EXPORT
Definition: axlGuiExport2.h:15