src/hbwidgets/editors/hbabstractedit.cpp
changeset 21 4633027730f5
parent 7 923ff622b8b9
child 28 b7da29130b0e
--- a/src/hbwidgets/editors/hbabstractedit.cpp	Tue Jul 06 14:36:53 2010 +0300
+++ b/src/hbwidgets/editors/hbabstractedit.cpp	Wed Aug 18 10:05:37 2010 +0300
@@ -39,7 +39,7 @@
 #include "hbsmileyengine_p.h"
 #include "hbinputeditorinterface.h"
 #include "hbfeaturemanager_r.h"
-#include "hbtextmeasurementutility_p.h"
+#include "hbtextmeasurementutility_r_p.h"
 #include "hbtapgesture.h"
 #include "hbpangesture.h"
 #include "hbnamespace_p.h"
@@ -680,7 +680,7 @@
 
     Returns pointer to a \a primitive of HbAbstractEdit.
 
-    Available primitive is HbStyle::P_Edit_text.
+    Available primitive is HbStylePrivate::P_Edit_text.
 
     \reimp
     \sa HbStyle::Primitive, HbWidget::primitive()
@@ -688,8 +688,8 @@
 QGraphicsItem *HbAbstractEdit::primitive (HbStyle::Primitive primitive) const
 {
     Q_D(const HbAbstractEdit);
-
-    if (primitive == HbStyle::P_Edit_text) {
+    const HbStylePrivate::Primitive p = (HbStylePrivate::Primitive)primitive;
+    if (p == HbStylePrivate::P_Edit_text) {
         return d->scrollArea;
     } else {
         return HbWidget::primitive(primitive);
@@ -1111,7 +1111,9 @@
     Q_D(HbAbstractEdit);
 
     d->validator = validator;
-    d->initValidator();
+    if (d->validator) {
+        d->initValidator();
+    }
 }
 
 /*!
@@ -1670,11 +1672,19 @@
  */
 QVariant HbAbstractEdit::itemChange(GraphicsItemChange change, const QVariant &value)
 {
-    Q_D(const HbAbstractEdit);
+    Q_D(HbAbstractEdit);
     if (change == QGraphicsItem::ItemScenePositionHasChanged) {
         if (d->selectionControl) {
             d->selectionControl->updatePrimitives();
         }
+    } else if (change == QGraphicsItem::ItemEnabledHasChanged) {
+        if(!value.toBool()) {
+            if (d->hasInputFocus()) {
+                d->closeInputPanel();
+            }
+            deselect();
+        }
+        updatePrimitives();
     }
     return HbWidget::itemChange(change, value);
 }