Added a method and a simple stub to position things using percentage.

Added a method and a simple stub to position things on the canvas
using percentage - this way I have a proper control on where I want
to put things on screen and it will make simpler for future changes,
even if the amount of code written is a bit bigger.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
This commit is contained in:
Tomaz Canabrava 2013-07-02 10:53:08 -03:00
parent ca517f1bf8
commit c98894fd52
2 changed files with 41 additions and 14 deletions

View file

@ -21,9 +21,16 @@ DivePlannerGraphics::DivePlannerGraphics(QWidget* parent): QGraphicsView(parent)
setBackgroundBrush(profile_color[BACKGROUND].at(0));
setMouseTracking(true);
setScene(new QGraphicsScene());
scene()->setSceneRect(0,0,200,200);
scene()->setSceneRect(0,0,1920,1080);
QRectF r = scene()->sceneRect();
verticalLine = new QGraphicsLineItem(
fromPercent(0, Qt::Horizontal),
fromPercent(0, Qt::Vertical),
fromPercent(0, Qt::Horizontal),
fromPercent(100, Qt::Vertical));
verticalLine = new QGraphicsLineItem(0,0,0, 200);
verticalLine->setPen(QPen(Qt::DotLine));
scene()->addItem(verticalLine);
@ -88,6 +95,13 @@ DivePlannerGraphics::DivePlannerGraphics(QWidget* parent): QGraphicsView(parent)
setRenderHint(QPainter::Antialiasing);
}
qreal DivePlannerGraphics::fromPercent(qreal percent, Qt::Orientation orientation)
{
qreal total = orientation == Qt::Horizontal ? sceneRect().width() : sceneRect().height();
qreal result = (total * percent) / 100;
return result;
}
void DivePlannerGraphics::cancelClicked()
{
qDebug() << "clicked";
@ -133,10 +147,6 @@ void DivePlannerGraphics::mouseDoubleClickEvent(QMouseEvent* event)
createDecoStops();
}
void DivePlannerGraphics::clearGeneratedDeco()
{
}
void DivePlannerGraphics::createDecoStops()
{
qDeleteAll(lines);