summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdriano Rezende <adriano.rezende@openbossa.org>2011-10-23 12:06:28 -0700
committerJens Bache-Wiig <jens.bache-wiig@nokia.com>2011-10-23 12:06:28 -0700
commitffb3116f391074820be064bb3be785ec4c797242 (patch)
tree0620c990e2eb710080ee8435ae5a08b868328d88
parentccb7b37449bbb2593ea9df30edeb117f956a74ba (diff)
downloadqtquickcontrols-ffb3116f391074820be064bb3be785ec4c797242.tar.gz
Fix uninitialized variable in QCursorArea and improve code path
Signed-off-by: Adriano Rezende <adriano.rezende@openbossa.org> Merge-request: 6 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@nokia.com>
-rw-r--r--src/qcursorarea.cpp58
-rw-r--r--src/qcursorarea.h9
2 files changed, 44 insertions, 23 deletions
diff --git a/src/qcursorarea.cpp b/src/qcursorarea.cpp
index d19e1946..aee49227 100644
--- a/src/qcursorarea.cpp
+++ b/src/qcursorarea.cpp
@@ -1,28 +1,46 @@
#include "qcursorarea.h"
-QCursorArea::QCursorArea(QDeclarativeItem *parent) :
- QDeclarativeItem(parent)
+QCursorArea::QCursorArea(QDeclarativeItem *parent)
+ : QDeclarativeItem(parent),
+ m_cursor(ArrowCursor)
{
+
}
-void QCursorArea::setCursor(Cursor str)
+void QCursorArea::setCursor(Cursor cursor)
{
- if (m_cursor != str) {
- m_cursor = str;
- if (m_cursor == SizeHorCursor)
- QDeclarativeItem::setCursor(Qt::SizeHorCursor);
- else if (m_cursor == SizeVerCursor)
- QDeclarativeItem::setCursor(Qt::SizeVerCursor);
- else if (m_cursor == SizeAllCursor)
- QDeclarativeItem::setCursor(Qt::SizeAllCursor);
- else if (m_cursor == SplitHCursor)
- QDeclarativeItem::setCursor(Qt::SplitHCursor);
- else if (m_cursor == SplitVCursor)
- QDeclarativeItem::setCursor(Qt::SplitVCursor);
- else if (m_cursor == WaitCursor)
- QDeclarativeItem::setCursor(Qt::WaitCursor);
- else if (m_cursor == PointingHandCursor)
- QDeclarativeItem::setCursor(Qt::PointingHandCursor);
- emit cursorChanged();
+ if (m_cursor == cursor)
+ return;
+
+ switch (cursor) {
+ case ArrowCursor:
+ QDeclarativeItem::setCursor(Qt::ArrowCursor);
+ break;
+ case SizeHorCursor:
+ QDeclarativeItem::setCursor(Qt::SizeHorCursor);
+ break;
+ case SizeVerCursor:
+ QDeclarativeItem::setCursor(Qt::SizeVerCursor);
+ break;
+ case SizeAllCursor:
+ QDeclarativeItem::setCursor(Qt::SizeAllCursor);
+ break;
+ case SplitHCursor:
+ QDeclarativeItem::setCursor(Qt::SplitHCursor);
+ break;
+ case SplitVCursor:
+ QDeclarativeItem::setCursor(Qt::SplitVCursor);
+ break;
+ case WaitCursor:
+ QDeclarativeItem::setCursor(Qt::WaitCursor);
+ break;
+ case PointingHandCursor:
+ QDeclarativeItem::setCursor(Qt::PointingHandCursor);
+ break;
+ default:
+ return;
}
+
+ m_cursor = cursor;
+ emit cursorChanged();
}
diff --git a/src/qcursorarea.h b/src/qcursorarea.h
index 4ccb74b8..91629af0 100644
--- a/src/qcursorarea.h
+++ b/src/qcursorarea.h
@@ -7,9 +7,11 @@ class QCursorArea : public QDeclarativeItem
{
Q_OBJECT
Q_ENUMS(Cursor)
- Q_PROPERTY( Cursor cursor READ cursor WRITE setCursor NOTIFY cursorChanged)
+ Q_PROPERTY(Cursor cursor READ cursor WRITE setCursor NOTIFY cursorChanged)
+
public:
enum Cursor {
+ ArrowCursor,
SizeHorCursor,
SizeVerCursor,
SizeAllCursor,
@@ -18,8 +20,10 @@ public:
WaitCursor,
PointingHandCursor
};
+
explicit QCursorArea(QDeclarativeItem *parent = 0);
- void setCursor(Cursor str);
+
+ void setCursor(Cursor cursor);
Cursor cursor() const { return m_cursor; }
signals:
@@ -27,7 +31,6 @@ signals:
private:
Cursor m_cursor;
-
};
#endif // CURSORAREA_H