diff dateitem.cpp @ 53:3c46b2ac45d3

* Put proper labels &c in changeset items; colour branches and users; etc
author Chris Cannam
date Fri, 12 Nov 2010 16:48:18 +0000
parents
children f583e44d9d31
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dateitem.cpp	Fri Nov 12 16:48:18 2010 +0000
@@ -0,0 +1,55 @@
+
+#include "dateitem.h"
+
+#include <QPainter>
+#include <QBrush>
+#include <QFont>
+
+void
+DateItem::setRows(int minrow, int n)
+{
+    m_minrow = minrow;
+    m_maxrow = minrow + n - 1;
+    setY(m_minrow * 90);
+}
+
+void
+DateItem::setCols(int mincol, int n)
+{
+    m_mincol = mincol;
+    m_maxcol = mincol + n - 1;
+    setX(m_mincol * 100);
+}
+
+QRectF
+DateItem::boundingRect() const
+{
+    return QRectF(-75, -25,
+		  (m_maxcol - m_mincol + 1) * 100 + 100,
+		  (m_maxrow - m_minrow + 1) * 90).normalized();
+}
+
+void
+DateItem::paint(QPainter *paint, const QStyleOptionGraphicsItem *opt, QWidget *w)
+{
+    QBrush brush;
+
+    if (m_even) {
+	QColor c(QColor::fromRgb(240, 240, 240));
+	brush = QBrush(c);
+    } else {
+	QColor c(QColor::fromRgb(250, 250, 250));
+	brush = QBrush(c);
+    }
+
+    paint->fillRect(boundingRect(), brush);
+
+    paint->save();
+    QFont f(paint->font());
+    f.setBold(true);
+    paint->setFont(f);
+    paint->drawText(-70, -10, m_dateString);
+    paint->restore();
+}
+
+