--- a/src/hbwidgets/popups/hbinputdialog.cpp Mon Oct 04 17:49:30 2010 +0300
+++ b/src/hbwidgets/popups/hbinputdialog.cpp Mon Oct 18 18:23:13 2010 +0300
@@ -30,7 +30,7 @@
#include "hbinputdialogcontent_p.h"
#include <hbstyleoptioninputdialog_p.h>
#include <hbvalidator.h>
-
+#include <hbstyletextprimitivedata.h>
#include <QGraphicsScene>
#ifdef HBINPUTDIALOG_DEBUG
@@ -254,7 +254,7 @@
\param validator Validator uses undo stack to back out invalid changes. Therefore undo
is enabled when validator is set.
- \param row This parameter indicates which row of the user field.0 means the
+ \param row This parameter indicates which row of the user field.0 means the
the first user field and 1 means second user field
\sa HbAbstractEdit::validator
@@ -329,28 +329,6 @@
};
/*!
- \deprecated HbInputDialog::primitive(HbStyle::Primitive)
- is deprecated.
-
- Provides access to primitives of HbInputDialog.
- \param primitive is the type of the requested primitive. The available
- primitives are P_InputDialog_text, and P_InputDialog_additionaltext.
-
-*/
-QGraphicsItem* HbInputDialog::primitive(HbStyle::Primitive primitive) const
-{
- Q_D(const HbInputDialog);
- switch (primitive) {
- case HbStyle::P_InputDialog_text:
- return d->mContentWidget->mLabel1;
- case HbStyle::P_InputDialog_additionaltext:
- return d->mContentWidget->mLabel2;
- default:
- return 0;
- }
-}
-
-/*!
\reimp
*/
void HbInputDialog::initStyleOption(HbStyleOptionInputDialog *option) const
@@ -361,6 +339,23 @@
option->additionalText = d->mPromptAdditionalText;
}
+void HbInputDialog::initPrimitiveData(HbStylePrimitiveData *primitiveData, const QGraphicsObject *primitive)
+{
+ HbWidgetBase::initPrimitiveData(primitiveData, primitive);
+ QString itemName = HbStyle::itemName(primitive);
+ if (itemName == QLatin1String("label-1")) {
+ HbStyleTextPrimitiveData *data = hbstyleprimitivedata_cast<HbStyleTextPrimitiveData*>(primitiveData);
+ data->text = promptText();
+ data->textWrapping = Hb::TextWordWrap;
+ }
+
+ if (itemName == QLatin1String("label-2")) {
+ HbStyleTextPrimitiveData *data = hbstyleprimitivedata_cast<HbStyleTextPrimitiveData*>(primitiveData);
+ data->text = promptText(1);
+ data->textWrapping = Hb::TextWordWrap;
+ }
+}
+
/*!
\reimp
*/
@@ -368,17 +363,37 @@
{
Q_D(HbInputDialog);
HbDialog::updatePrimitives();
- HbStyleOptionInputDialog option;
- initStyleOption(&option);
if (d->mContentWidget->mLabel1) {
- style()->updatePrimitive(d->mContentWidget->mLabel1, HbStyle::P_InputDialog_text, &option);
- }
+ HbStyleTextPrimitiveData data;
+ initPrimitiveData(&data, d->mContentWidget->mLabel1);
+ style()->updatePrimitive(d->mContentWidget->mLabel1, &data, this);
+ }
+
+ if (d->mContentWidget->mLabel2) {
+ HbStyleTextPrimitiveData data;
+ initPrimitiveData(&data, d->mContentWidget->mLabel2);
+ style()->updatePrimitive(d->mContentWidget->mLabel2, &data, this);
+ }
+}
+
- if (d->mContentWidget->mLabel2 && d->mContentWidget->mAdditionalRowVisible) {
- style()->updatePrimitive(d->mContentWidget->mLabel2, HbStyle::P_InputDialog_additionaltext, &option);
+/*!
+ Recreaction of all the primitives.
+ */
+void HbInputDialog::recreatePrimitives()
+{
+ Q_D(HbInputDialog);
+ if (d->mContentWidget->mLabel1) {
+ delete d->mContentWidget->mLabel1;
+ d->mContentWidget->mLabel1 = 0;
+ d->mContentWidget->mLabel1 = style()->createPrimitive(HbStyle::PT_IconItem, "label-1",d->mContentWidget);
+ }
+ if (d->mContentWidget->mLabel2) {
+ delete d->mContentWidget->mLabel2;
+ d->mContentWidget->mLabel2 = 0;
+ d->mContentWidget->mLabel2 = style()->createPrimitive(HbStyle::PT_IconItem, "label-2",d->mContentWidget);
}
}
-
void HbInputDialog::done(int code)
{
Q_D(HbInputDialog);
@@ -674,5 +689,20 @@
dlg->setInputMode(IpInput);
dlg->open(receiver,member);
}
+
+QGraphicsItem *HbInputDialog::primitive(const QString &itemName) const
+{
+ Q_D(const HbInputDialog);
+
+ if(!itemName.compare(QString("label-1"))){
+ return d->mContentWidget->mLabel1;
+ }
+ if(!itemName.compare(QString("label-2"))){
+ return d->mContentWidget->mLabel2;
+ }
+
+ return HbDialog::primitive(itemName);
+}
+
#include "moc_hbinputdialog.cpp"