summaryrefslogtreecommitdiffstats
path: root/sigtools/BaseModel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sigtools/BaseModel.cpp')
-rw-r--r--sigtools/BaseModel.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/sigtools/BaseModel.cpp b/sigtools/BaseModel.cpp
index 3ddcccd7..c806bf83 100644
--- a/sigtools/BaseModel.cpp
+++ b/sigtools/BaseModel.cpp
@@ -18,6 +18,10 @@
// Header include
#include "BaseModel.h"
+// Qt includes
+#include <QtGui/QPainter>
+#include <QtGui/QStyleOptionViewItem>
+
using namespace Sigtools;
const int BaseModel::borderWidth = 1;
@@ -38,6 +42,20 @@ BaseModel* BaseModel::parent()
return m_parent;
}
+void BaseModel::paint(QPainter* painter, const QStyleOptionViewItem& option) const
+{
+ if (option.rect.width() != m_pixmap.width())
+ redraw(option.rect.width());
+ painter->drawPixmap(option.rect.topLeft(), m_pixmap);
+}
+
+QSize BaseModel::sizeHint(const QStyleOptionViewItem& option) const
+{
+ if (option.rect.width() != m_pixmap.width())
+ redraw(option.rect.width());
+ return m_pixmap.size();
+}
+
int BaseModel::indexNumber() const
{
if (m_parent)