mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-31 20:33:24 +00:00
Initializing the new Profile Class.
Beginning of the code for the constructor, just constructing some of the items and preparing for the State Machine to come. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
8773b4f9f0
commit
b50ae87007
2 changed files with 52 additions and 3 deletions
|
@ -1,7 +1,38 @@
|
||||||
#include "profilewidget2.h"
|
#include "profilewidget2.h"
|
||||||
|
#include "diveplotdatamodel.h"
|
||||||
|
#include "divepixmapitem.h"
|
||||||
|
#include "diverectitem.h"
|
||||||
|
#include "divecartesianaxis.h"
|
||||||
|
#include "diveprofileitem.h"
|
||||||
|
#include <QStateMachine>
|
||||||
|
|
||||||
ProfileWidget2::ProfileWidget2(QWidget *parent)
|
ProfileWidget2::ProfileWidget2(QWidget *parent) :
|
||||||
|
QGraphicsView(parent),
|
||||||
|
dataModel(new DivePlotDataModel(this)),
|
||||||
|
currentState(INVALID),
|
||||||
|
stateMachine(new QStateMachine(this)),
|
||||||
|
background (new DivePixmapItem()),
|
||||||
|
profileYAxis(new DepthAxis()),
|
||||||
|
gasYAxis(new DiveCartesianAxis()),
|
||||||
|
timeAxis(new TimeAxis()),
|
||||||
|
depthController(new DiveRectItem()),
|
||||||
|
timeController(new DiveRectItem()),
|
||||||
|
diveProfileItem(new DiveProfileItem())
|
||||||
{
|
{
|
||||||
|
setScene(new QGraphicsScene());
|
||||||
|
scene()->setSceneRect(0, 0, 100, 100);
|
||||||
|
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||||
|
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||||
|
scene()->setItemIndexMethod(QGraphicsScene::NoIndex);
|
||||||
|
setOptimizationFlags(QGraphicsView::DontSavePainterState);
|
||||||
|
setViewportUpdateMode(QGraphicsView::BoundingRectViewportUpdate);
|
||||||
|
setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing | QPainter::SmoothPixmapTransform);
|
||||||
|
|
||||||
|
// Creating the needed items.
|
||||||
|
// ORDER: {BACKGROUND, PROFILE_Y_AXIS, GAS_Y_AXIS, TIME_AXIS, DEPTH_CONTROLLER, TIME_CONTROLLER, COLUMNS};
|
||||||
|
profileYAxis->setOrientation(Qt::Vertical);
|
||||||
|
gasYAxis->setOrientation(Qt::Vertical);
|
||||||
|
timeAxis->setOrientation(Qt::Horizontal);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Currently just one dive, but the plan is to enable All of the selected dives.
|
// Currently just one dive, but the plan is to enable All of the selected dives.
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
#define PROFILEWIDGET2_H
|
#define PROFILEWIDGET2_H
|
||||||
|
|
||||||
#include <QGraphicsView>
|
#include <QGraphicsView>
|
||||||
#include <QStateMachine>
|
|
||||||
|
|
||||||
// /* The idea of this widget is to display and edit the profile.
|
// /* The idea of this widget is to display and edit the profile.
|
||||||
// * It has:
|
// * It has:
|
||||||
|
@ -15,8 +14,15 @@
|
||||||
// * It needs to be dynamic, things should *flow* on it, not just appear / disappear.
|
// * It needs to be dynamic, things should *flow* on it, not just appear / disappear.
|
||||||
// */
|
// */
|
||||||
#include "graphicsview-common.h"
|
#include "graphicsview-common.h"
|
||||||
|
struct DivePlotDataModel;
|
||||||
|
struct DivePixmapItem;
|
||||||
|
struct DiveRectItem;
|
||||||
|
struct DepthAxis;
|
||||||
|
struct DiveCartesianAxis;
|
||||||
|
struct DiveProfileItem;
|
||||||
|
struct TimeAxis;
|
||||||
struct dive;
|
struct dive;
|
||||||
|
struct QStateMachine;
|
||||||
|
|
||||||
class ProfileWidget2 : public QGraphicsView {
|
class ProfileWidget2 : public QGraphicsView {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -44,6 +50,18 @@ signals:
|
||||||
void startShowGasState();
|
void startShowGasState();
|
||||||
void startShowTissueState();
|
void startShowTissueState();
|
||||||
void startHideTissueState();
|
void startHideTissueState();
|
||||||
|
private:
|
||||||
|
DivePlotDataModel *dataModel;
|
||||||
|
State currentState;
|
||||||
|
QStateMachine *stateMachine;
|
||||||
|
|
||||||
|
DivePixmapItem *background ;
|
||||||
|
DepthAxis *profileYAxis ;
|
||||||
|
DiveCartesianAxis *gasYAxis;
|
||||||
|
TimeAxis *timeAxis;
|
||||||
|
DiveRectItem *depthController;
|
||||||
|
DiveRectItem *timeController;
|
||||||
|
DiveProfileItem *diveProfileItem;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
Loading…
Add table
Reference in a new issue