mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Started the code for the Profile Plotting
This small patch adds a new class - ProfileGraphicsView it's a QGraphicsView based class that will holds all graphics-items for the plotting. The setup is simple, just call ui->ListView->plot( dive ) ( that's already a ProfileGraphicsView and magic will happen. Since Im using a QGraphicsView , the size of the canvas doesn't matter and I'm fixing it at 0,0,100,100. when a resize is done, the resizeEvent will be called, fitting the scene's rectangle on the view. Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
fcd6903621
commit
8353d57164
5 changed files with 53 additions and 3 deletions
26
qt-ui/profilegraphics.cpp
Normal file
26
qt-ui/profilegraphics.cpp
Normal file
|
@ -0,0 +1,26 @@
|
|||
#include "profilegraphics.h"
|
||||
|
||||
#include <QGraphicsScene>
|
||||
#include <QResizeEvent>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
ProfileGraphicsView::ProfileGraphicsView(QWidget* parent) : QGraphicsView(parent)
|
||||
{
|
||||
setScene(new QGraphicsScene());
|
||||
scene()->setSceneRect(0,0,100,100);
|
||||
}
|
||||
|
||||
void ProfileGraphicsView::plot(struct dive *d)
|
||||
{
|
||||
qDebug() << "Start the plotting of the dive here.";
|
||||
}
|
||||
|
||||
void ProfileGraphicsView::resizeEvent(QResizeEvent *event)
|
||||
{
|
||||
// Fits the scene's rectangle on the view.
|
||||
// I can pass some parameters to this -
|
||||
// like Qt::IgnoreAspectRatio or Qt::KeepAspectRatio
|
||||
QRectF r = scene()->sceneRect();
|
||||
fitInView ( r.x() - 2, r.y() -2, r.width() + 4, r.height() + 4); // do a little bit of spacing;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue