File: scrolltest.cpp

package info (click to toggle)
wfview 2.11-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 15,256 kB
  • sloc: cpp: 43,386; ansic: 3,196; sh: 32; xml: 29; makefile: 11
file content (56 lines) | stat: -rw-r--r-- 1,384 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include "scrolltest.h"

scrolltest::scrolltest(QWidget *parent)
    : QWidget{parent}
{
}


void scrolltest::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    widgetWindowHeight = this->height();

    fontSize = 12;

    painter.setRenderHint(QPainter::SmoothPixmapTransform);
    //painter.setFont(QFont(this->fontInfo().family(), fontSize));
    painter.setWindow(QRect(0, 0, this->width(), widgetWindowHeight));

    //painter.setPen(Qt::red);
    painter.drawText(0,widgetWindowHeight, resultText );
}

void scrolltest::wheelEvent(QWheelEvent *we)
{
    int clicksX = abs(we->angleDelta().x());
    int clicksY = abs(we->angleDelta().y());

    if(clicksX > maxX)
        maxX = clicksX;

    if(clicksY > maxY)
        maxY = clicksY;

    if( (clicksX !=0) && (clicksX < minX))
        minX = clicksX;

    if( (clicksY !=0) && (clicksY < minY))
        minY = clicksY;

    resultText = QString("X: %1, Y: %2, maxX: %3, maxY: %4")
             .arg(clicksX).arg(clicksY).arg(maxX).arg(maxY);

    if(minX != 999999)
        resultText.append(QString(", minX: %1").arg(minX));

    if(minY != 999999)
        resultText.append(QString(", minY: %1").arg(minY));

    //QFontMetrics fm(this->font());
    //int neededWidth = fm.horizontalAdvance(resultText);
    //this->resize(this->height(), neededWidth);

    emit haveRawClicksXY(clicksX, clicksY);
    update();
}