[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/kexi/plugins/reportspgz/backend/wrtembed
From: Adam Pigg <adam () piggz ! co ! uk>
Date: 2009-03-03 21:36:01
Message-ID: 1236116161.384429.31860.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 934834 by piggz:
Fixed vertical resolution of the grid, and try to speed it up slightly
M +48 -21 reportscene.cpp
M +5 -4 reportscene.h
--- trunk/koffice/kexi/plugins/reportspgz/backend/wrtembed/reportscene.cpp \
#934833:934834 @@ -43,6 +43,22 @@
: QGraphicsScene(0, 0, w, h)
{
_rd = rd;
+
+ if (KoUnit::unitName(u) != KoUnit::unitName(_rd->pageUnit())) {
+ u = _rd->pageUnit();
+ if (KoUnit::unitName(u) == "cc" || KoUnit::unitName(u) == "pi" || \
KoUnit::unitName(u) == "mm") { + majorx = \
POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiX(); + majory = \
POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiY(); + }
+ else if (KoUnit::unitName(u) == "pt") {
+ majorx = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiX();
+ majory = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiY();
+ }
+ else {
+ majorx = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiX();
+ majory = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiY();
+ }
+ }
}
ReportScene::~ReportScene()
{
@@ -58,30 +74,41 @@
if (_rd->propertySet()->property("ShowGrid").value().toBool()) {
if (KoUnit::unitName(u) != KoUnit::unitName(_rd->pageUnit())) {
u = _rd->pageUnit();
- if (KoUnit::unitName(u) == "cc" || KoUnit::unitName(u) == "pi" || \
KoUnit::unitName(u) == "mm")
- major = POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiX();
- else if (KoUnit::unitName(u) == "pt")
- major = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiX();
- else
- major = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiX();
+ if (KoUnit::unitName(u) == "cc" || KoUnit::unitName(u) == "pi" || \
KoUnit::unitName(u) == "mm") { + majorx = \
POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiX(); + majory = \
POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiY(); + }
+ else if (KoUnit::unitName(u) == "pt") {
+ majorx = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiX();
+ majory = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiY();
+ }
+ else {
+ majorx = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiX();
+ majory = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiY();
+ }
}
minor = _rd->propertySet()->property("GridDivisions").value().toInt();
- pixel_increment = (major / minor);
-
+ pixel_incrementx = (majorx / minor);
+ pixel_incrementy = (majory / minor);
+
QPen pen = painter->pen();
painter->setPen(QColor(212, 212, 212));
- if (pixel_increment > 2) { // do not bother painting points if increments \
are so small
- int wpoints = qRound(sceneRect().width() / pixel_increment);
- int hpoints = qRound(sceneRect().height() / pixel_increment);
+ kDebug() << "dpix" << KoGlobal::dpiX() << "dpiy" << KoGlobal::dpiY() << \
"mayorx:" << majorx << "majory" << majory << "pix:" << pixel_incrementx << "piy:" << \
pixel_incrementy; +
+ if (pixel_incrementx > 2) { // do not bother painting points if increments \
are so small + int wpoints = qRound(sceneRect().width() / \
pixel_incrementx); + int hpoints = qRound(sceneRect().height() / \
pixel_incrementy); for (int i = 0; i < wpoints; ++i) {
for (int j = 0; j < hpoints; ++j) {
- if (i % minor == 0 && j % minor == 0) {
- painter->drawLine(QPointF(i * pixel_increment, j * \
pixel_increment), QPointF(i * pixel_increment, j * pixel_increment + \
major));
- painter->drawLine(QPointF(i * pixel_increment, j * \
pixel_increment), QPointF(i * pixel_increment + major, j * \
pixel_increment));
- } else {
- painter->drawPoint(QPointF(i * pixel_increment, j * \
pixel_increment)); + if (clip.contains(i * pixel_incrementx, j * \
pixel_incrementy)){ + if (i % minor == 0 && j % minor == 0) {
+ painter->drawLine(QPointF(i * pixel_incrementx, j * \
pixel_incrementy), QPointF(i * pixel_incrementx, j * pixel_incrementy + majorx)); + \
painter->drawLine(QPointF(i * pixel_incrementx, j * pixel_incrementy), QPointF(i * \
pixel_incrementx + majory, j * pixel_incrementy)); + } else {
+ painter->drawPoint(QPointF(i * pixel_incrementx, j * \
pixel_incrementy)); + }
}
}
}
@@ -125,18 +152,18 @@
if (KoUnit::unitName(u) != KoUnit::unitName(_rd->pageUnit())) {
u = _rd->pageUnit();
if (KoUnit::unitName(u) == "cc" || KoUnit::unitName(u) == "pi" || \
KoUnit::unitName(u) == "mm")
- major = POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiX();
+ majorx = POINT_TO_INCH(u.fromUserValue(10)) * KoGlobal::dpiX();
else if (KoUnit::unitName(u) == "pt")
- major = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiX();
+ majorx = POINT_TO_INCH(u.fromUserValue(100)) * KoGlobal::dpiX();
else
- major = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiX();
+ majorx = POINT_TO_INCH(u.fromUserValue(1)) * KoGlobal::dpiX();
}
minor = _rd->propertySet()->property("GridDivisions").value().toInt();
- pixel_increment = (major / minor);
+ pixel_incrementx = (majorx / minor);
- return QPointF(qRound((p.x() / pixel_increment)) * pixel_increment, \
qRound((p.y() / pixel_increment)) * pixel_increment); + return \
QPointF(qRound((p.x() / pixel_incrementx)) * pixel_incrementx, qRound((p.y() / \
pixel_incrementx)) * pixel_incrementx); }
void ReportScene::focusOutEvent(QFocusEvent * focusEvent)
--- trunk/koffice/kexi/plugins/reportspgz/backend/wrtembed/reportscene.h \
#934833:934834 @@ -49,7 +49,7 @@
void lowerSelected();
QGraphicsItemList itemsOrdered();
qreal gridSize() {
- return pixel_increment;
+ return pixel_incrementx;
}
protected:
@@ -70,10 +70,11 @@
KoUnit u;
int minor;
- qreal major;
- qreal pixel_increment;
+ qreal majorx;
+ qreal majory;
+ qreal pixel_incrementx;
+ qreal pixel_incrementy;
-
};
#endif
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic