Mercurial > hg > easyhg
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(); +} + +