src/hbwidgets/devicedialogs/hbdeviceprogressdialogsymbian.cpp
changeset 2 06ff229162e9
parent 1 f7ac710697a9
child 5 627c4a0fd0e7
--- a/src/hbwidgets/devicedialogs/hbdeviceprogressdialogsymbian.cpp	Mon May 03 12:48:33 2010 +0300
+++ b/src/hbwidgets/devicedialogs/hbdeviceprogressdialogsymbian.cpp	Fri May 14 16:09:54 2010 +0300
@@ -35,16 +35,10 @@
 _LIT(KDialogAutoClose, "autoClose");
 _LIT(KDialogText, "text");
 _LIT(KDialogIconName, "iconName");
-_LIT(KDialogTextAlign, "textAlignment");
-_LIT(KDialogIconAlign, "iconAlignment");
-_LIT(KPrimaryActionText, "primaryActionText");
-_LIT(KPrimaryActionNull, "primaryActionNull");
+_LIT(KCancelAction, "cancelAction");
 _LIT(KPluginIdentifier, "com.nokia.hb.deviceprogressdialog/1.0");
 _LIT(KAnimationDefinition, "animationDefinition");
 
-const TInt KAlignCenterLeft = 0x0080 | 0x0001;  //Qt::AlignVCenter | Qt::AlignLeft
-const TInt KAlignCenter = 0x0080 | 0x0004;      //Qt::AlignCenter
-
 NONSHARABLE_CLASS(CHbDeviceProgressDialogSymbianPrivate) : public CBase,
                                                            public MHbDeviceDialogObserver
 {
@@ -61,6 +55,7 @@
     void AddVariantL(const TDesC& aKey, const TAny* aData,
             CHbSymbianVariant::TType aDataType, CHbSymbianVariantMap* map);
     const CHbSymbianVariant* Variant(const TDesC& aKey) const;
+    static HBufC *CreateActionDataLC(TBool aNull, const TDesC &text);
 
 public: // MHbDeviceDialogObserver
     void DataReceived(CHbSymbianVariantMap& aData);
@@ -82,9 +77,6 @@
     TBool iAutoClose;
     TInt iType;
     TInt iProgressValue;
-    TInt iTextAlign;
-    TInt iIconAlign;
-    TBool iWrap;
     RBuf iText;
     RBuf iIconName;
     RBuf iAnimationDefinition;
@@ -142,8 +134,6 @@
     AddVariantL(KDialogMinimum, &iMinimum, CHbSymbianVariant::EInt, iVariantMap);
     AddVariantL(KDialogAutoClose, &iAutoClose, CHbSymbianVariant::EBool, iVariantMap);
     AddVariantL(KDialogValue, &iProgressValue, CHbSymbianVariant::EInt, iVariantMap);
-    AddVariantL(KDialogTextAlign, &iTextAlign, CHbSymbianVariant::EInt, iVariantMap);
-    AddVariantL(KDialogIconAlign, &iIconAlign, CHbSymbianVariant::EInt, iVariantMap);
 
     if (iText.Length() > 0)
         {
@@ -161,15 +151,9 @@
         {
         iButton.iFlags.iTextModified = false;
         iButton.iFlags.iIsNullModified = false;
-        TBool isNull = iButton.iFlags.iIsNull;
-        if (isNull)
-            {
-            AddVariantL(KPrimaryActionNull, &isNull, CHbSymbianVariant::EBool, iVariantMap);
-            }
-        else
-            {
-            AddVariantL(KPrimaryActionText, &iButton.iText, CHbSymbianVariant::EDes, iVariantMap);
-            }
+        HBufC *actionData = CreateActionDataLC(iButton.iFlags.iIsNull, iButton.iText);
+        AddVariantL(KCancelAction, actionData, CHbSymbianVariant::EDes, iVariantMap);
+        CleanupStack::PopAndDestroy(); // actionData
         }
     iButton.iFlags.iPressed = false;
     User::LeaveIfError(iDeviceDialog->Show(KPluginIdentifier, *iVariantMap, this));
@@ -221,20 +205,6 @@
         AddVariantL(KDialogValue, &iProgressValue, CHbSymbianVariant::EInt, map);
         }
 
-    variant = Variant(KDialogTextAlign);
-    if (variant && *variant->Value<TInt>() != iTextAlign)
-        {
-        AddVariantL(KDialogTextAlign, &iTextAlign, CHbSymbianVariant::EInt, iVariantMap);
-        AddVariantL(KDialogTextAlign, &iTextAlign, CHbSymbianVariant::EInt, map);
-        }
-
-    variant = Variant(KDialogIconAlign);
-    if (variant && *variant->Value<TInt>() != iIconAlign)
-        {
-        AddVariantL(KDialogIconAlign, &iIconAlign, CHbSymbianVariant::EInt, iVariantMap);
-        AddVariantL(KDialogIconAlign, &iIconAlign, CHbSymbianVariant::EInt, map);
-        }
-
     variant = Variant(KDialogText);
     if (variant && iText == *variant->Value<TDesC>())
         {
@@ -260,15 +230,9 @@
         {
         iButton.iFlags.iTextModified = false;
         iButton.iFlags.iIsNullModified = false;
-        TBool isNull = iButton.iFlags.iIsNull;
-        if (isNull)
-            {
-            AddVariantL(KPrimaryActionNull, &isNull, CHbSymbianVariant::EBool, iVariantMap);
-            }
-        else
-            {
-            AddVariantL(KPrimaryActionText, &iButton.iText, CHbSymbianVariant::EDes, iVariantMap);
-            }
+        HBufC *actionData = CreateActionDataLC(iButton.iFlags.iIsNull, iButton.iText);
+        AddVariantL(KCancelAction, actionData, CHbSymbianVariant::EDes, iVariantMap);
+        CleanupStack::PopAndDestroy(); // actionData
         }
 
     User::LeaveIfError(iDeviceDialog->Update(*map));
@@ -283,8 +247,8 @@
     if (variant)
         {
         const TDesC *value = variant->Value<const TDesC>();
-        _LIT(KPrimary, "p");
-        if (value && *value == KPrimary)
+        _LIT(KCancel, "c");
+        if (value && *value == KCancel)
             {
             iButton.iFlags.iPressed = true;
             if (iObserver)
@@ -329,6 +293,26 @@
     return iVariantMap->Get(aKey);
     }
 
+// Pack into a string a data for cancel button
+HBufC *CHbDeviceProgressDialogSymbianPrivate::CreateActionDataLC(TBool aNull, const TDesC &text)
+{
+    HBufC *actionData;
+    if (aNull)
+        {
+        actionData = HBufC::NewL(0);
+        }
+    else
+        {
+        _LIT(KtextTag, "t:");
+        actionData = HBufC::NewL(text.Length() + KtextTag().Length());
+        TPtr ptr = actionData->Des();
+        ptr.Append(KtextTag);
+        ptr.Append(text);
+        }
+    CleanupStack::PushL(actionData);
+    return actionData;
+}
+
 /*!
     \class MHbDeviceProgressDialogObserver
     \brief MHbDeviceProgressDialogObserver is an observer interface for observing CHbDeviceProgressDialogSymbian.
@@ -444,7 +428,7 @@
 	can be accessed.
 
     \sa HbDeviceProgressDialog, HbDeviceDialog
-    \proto
+    \stable
     \hbwidgets
 */
 /*!
@@ -504,18 +488,6 @@
     }
 
 /*!
-    Cancels and closes the dialog.
-
-    \deprecated CHbDeviceProgressDialogSymbian::Cancel()
-        is deprecated. Replaced by CHbDeviceProgressDialogSymbian::Close().
-
-*/
-EXPORT_C void CHbDeviceProgressDialogSymbian::Cancel()
-    {
-    d->Close();
-    }
-
-/*!
     Closes the dialog.
 */
 EXPORT_C void CHbDeviceProgressDialogSymbian::Close()
@@ -738,77 +710,6 @@
 	}
 
 /*!
-    Sets the text alignment.
-    \param aAlign Qt defined alignment options can used.
-    \sa TextAlignment()
-*/
-EXPORT_C void CHbDeviceProgressDialogSymbian::SetTextAlignment(TInt aAlign)
-    {
-    d->iTextAlign = aAlign;
-    }
-
-/*!
-    Returns the text alignment.
-
-    The default value is Qt::AlignLeft|Qt::AlignVCenter.
-    \sa SetTextAlignment()
-*/
-EXPORT_C TInt CHbDeviceProgressDialogSymbian::TextAlignment() const
-    {
-    return d->iTextAlign;
-    }
-
-/*!
-    Sets the icon alignment.
-    \param aAlign Qt defined alignment options can used.
-    \sa IconAlignment()
-*/
-EXPORT_C void CHbDeviceProgressDialogSymbian::SetIconAlignment(TInt aAlign)
-    {
-    d->iIconAlign = aAlign;
-    }
-
-/*!
-    Returns the icon alignment.
-
-    The default value is Qt::AlignCenter.
-    \sa SetIconAlignment()
-*/
-EXPORT_C TInt CHbDeviceProgressDialogSymbian::IconAlignment() const
-    {
-    return d->iIconAlign;
-    }
-
-/*!
-    Sets the text wrapping.
-    \param aWrap When set, the text is drawn with Qt::TextWordWrap enabled meaning that
-    lines breaks are at appropriate point, e.g. at word boundaries.
-    \sa TextWrapping()
-
-    \deprecated CHbDeviceProgressDialogSymbian::SetTextWrapping(int)
-        is deprecated. Will be removed.
-
-*/
-EXPORT_C void CHbDeviceProgressDialogSymbian::SetTextWrapping(TBool aWrap)
-    {
-    d->iWrap = aWrap;
-    }
-
-/*!
-    Returns the text wrapping setting.
-
-    The default value is true.
-    \sa SetTextWrapping()
-
-    \deprecated CHbDeviceProgressDialogSymbian::TextWrapping() const
-        is deprecated. Will be removed.
-*/
-EXPORT_C TBool CHbDeviceProgressDialogSymbian::TextWrapping() const
-    {
-    return d->iWrap;
-    }
-
-/*!
     Sets progress dialog box button text. The dialog gets updated next time ShowL() or UpdateL()
     is called.
 
@@ -891,7 +792,4 @@
     d->ConstructL(this);
     SetProgressType(aType);
     SetProgressValue(0);
-    SetTextAlignment(KAlignCenterLeft);
-    SetIconAlignment(KAlignCenter);
-    SetTextWrapping(ETrue);
     }