--- a/coreapplicationuis/hbdeviceinputdialogplugin/src/hbdeviceinputdialogwidget.cpp Tue Aug 31 15:24:25 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,378 +0,0 @@
-/****************************************************************************
- * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
- * All rights reserved.
- * This component and the accompanying materials are made available
- * under the terms of "Eclipse Public License v1.0""
- * which accompanies this distribution, and is available
- * at the URL "http://www.eclipse.org/legal/epl-v10.html".
- *
- * Initial Contributors:
- * Nokia Corporation - initial contribution.
- *
- * Contributors:
- *
- * Description:
- *
-***************************************************************************/
-
-#include <hbaction.h>
-#include <hbdialog.h>
-#include <hbinputdialog.h>
-#include<hblineedit.h>
-#include <hbiconanimationmanager.h>
-#include "hbdeviceinputdialogwidget_p.h"
-#include "hbdeviceinputdialogpluginerrors_p.h"
-
-//For Localization
-QString LOCALE_PATH("/resource/qt/translations/");
-QString TS_FILE("filemanager");
-
-// Constructor
-HbDeviceInputDialogWidget::HbDeviceInputDialogWidget(const QVariantMap ¶meters):HbInputDialog()
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::Constructor:Begin") ) );
- mLastError = NoError;
- mShowEventReceived = false;
- mPrimaryAction = 0;
- mSecondaryAction = 0;
- mDeviceDialogError =0;
- mHack = 1;
- //resetProperties();
- if (preConstructDialog())
- {
- //Translator loaded succesfully then olny construct widgets
- constructDialog(parameters);
- if (!mPrimaryAction) {
- // If default button provided by HbInputDialog is used, connect into its triggered signal.
- QAction *action = /*primaryAction()*/this->actions().first();
- if (action) {
- connect(action, SIGNAL(triggered()), SLOT(primaryActionTriggered()));
- }
- }
- if (!mSecondaryAction) {
- // If default button provided by HbInputDialog is used, connect into its triggered signal.
- QAction *action = /*secondaryAction()*/ this->actions().at(1);
- if (action) {
- connect(action, SIGNAL(triggered()), SLOT(secondaryActionTriggered()));
- }
- }
- connect(this, SIGNAL(visibilityChanged()), SLOT(closeDialog()));
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::Constructor:End") ) );
-}
-
-// Destructor
-HbDeviceInputDialogWidget::~HbDeviceInputDialogWidget()
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::Destrcuctor:Begin") ) );
- delete mPrimaryAction;
- delete mSecondaryAction;
- delete mHbTranslator;
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::Destructor:End") ) );
-}
-
-// Set parameters
-bool HbDeviceInputDialogWidget::setDeviceDialogParameters(const QVariantMap ¶meters)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setDeviceDialogParameters:Begin") ) );
- mLastError = NoError;
- bool ret(false);
- if (checkProperties(parameters)) {
- setProperties(parameters);
- ret = true;
- }
- else {
- mLastError = ParameterError;
- ret = false;
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setDeviceDialogParameters:End") ) );
- return ret;
-}
-
-/**
- * Before creating widgets Translator must be loaded
- */
-bool HbDeviceInputDialogWidget::preConstructDialog()
- {
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::preConstructDialog:Begin") ) );
- //Translator
- mHbTranslator = new HbTranslator(LOCALE_PATH,TS_FILE);
- if(!mHbTranslator)
- {
- //Translator is failed to create
- mDeviceDialogError = UnknownDeviceDialogError;
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::preConstructDialog:MemoryAllocation Failed") ) );
- return false;
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::preConstructDialog:End") ) );
- return true;
- }
-
-// Get error
-int HbDeviceInputDialogWidget::deviceDialogError() const
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::deviceDialogError:Begin") ) );
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::deviceDialogError:End") ) );
- return mLastError;
-}
-
-// Close device dialog
-void HbDeviceInputDialogWidget::closeDeviceDialog(bool byClient)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::closeDeviceDialog:Begin") ) );
- Q_UNUSED(byClient);
- // Closed by client or internally by server -> no action to be transmitted.
- mSendAction = false;
- close();
- // If show event has been received, close is signalled from hide event. If not,
- // hide event does not come and close is signalled from here.
- if (!mShowEventReceived) {
- emit deviceDialogClosed();
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::closeDeviceDialog:End") ) );
-}
-
-// Return display widget
-HbDialog *HbDeviceInputDialogWidget::deviceDialogWidget() const
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::deviceDialogWidget:Begin") ) );
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::deviceDialogWidget:End") ) );
- return const_cast<HbDeviceInputDialogWidget*>(this);
-}
-
-
-// Construct dialog
-bool HbDeviceInputDialogWidget::constructDialog(const QVariantMap ¶meters)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::constructDialog:Begin") ) );
- bool ret(false);
- // Check that parameters are valid
-
- if (!checkProperties(parameters)) {
- mLastError = ParameterError;
- ret = false;
- }
- else {
- setProperties(parameters);
- resetProperties();
- ret = true;
- }
-
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::constructDialog:End") ) );
- return ret;
-}
-
-// Check that device dialog parameters are valid
-bool HbDeviceInputDialogWidget::checkProperties(const QVariantMap ¶meters)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::checkProperties:Begin") ) );
- QVariantMap::const_iterator i = parameters.constBegin();
- while (i != parameters.constEnd()) {
- QByteArray key = i.key().toAscii();
- if (!property(key.constData()).isValid()) {
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::checkProperties:End :: returning false") ) );
- return false;
- }
- ++i;
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::checkProperties:End :: returning true") ) );
- return true;
-}
-
-// Set properties
-void HbDeviceInputDialogWidget::setProperties(const QVariantMap ¶meters)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setProperties:Begin") ) );
- QVariantMap::const_iterator i = parameters.constBegin();
- while (i != parameters.constEnd()) {
- QByteArray key = i.key().toAscii();
- if (property(key.constData()).isValid()) {
- setProperty(key.constData(), i.value());
- }
- ++i;
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setProperties:End") ) );
- return;
-}
-
-// Reset properties to default values
-void HbDeviceInputDialogWidget::resetProperties()
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::resetProperties:Begin") ) );
-// mIconName.clear();
- setModal(true);
- setPromptText(hbTrId("txt_common_dialog_password"), 0);
- setInputMode(TextInput,0);
- setEchoMode(HbLineEdit::Password,0);
- setTimeout(HbPopup::NoTimeout);
- setDismissPolicy(HbPopup::NoDismiss);
-
- mPrimaryActionNull = false;
- mSecondaryActionNull = false;
- mSendAction = true;
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::resetProperties:End") ) );
- return;
-}
-
-QString HbDeviceInputDialogWidget::primaryActionText() const
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::primaryActionText:Begin") ) );
- QAction *action = /*primaryAction()*/this->actions().first();
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::primaryActionText:End") ) );
- return action ? action->text() : QString();
-}
-
-void HbDeviceInputDialogWidget::setPrimaryActionText(QString &actionText)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setPrimaryActionText:Begin") ) );
- QAction *action = /*primaryAction()*/this->actions().first();
- if (action) {
- action->setText(actionText);
- } else {
- if (!mPrimaryAction) {
- mPrimaryAction = new HbAction(actionText);
- connect(mPrimaryAction, SIGNAL(triggered()), this, SLOT(primaryActionTriggered()));
- } else {
- mPrimaryAction->setText(actionText);
- }
- setPrimaryAction(mPrimaryAction);
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setPrimaryActionText:End") ) );
-}
-
-QString HbDeviceInputDialogWidget::secondaryActionText() const
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::secondaryActionText:Begin") ) );
- QAction *action = /*secondaryAction()*/ this->actions().at(1);
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::secondaryActionText:End") ) );
- return action ? action->text() : QString();
-
-}
-
-void HbDeviceInputDialogWidget::setSecondaryActionText(QString &actionText)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setSecondaryActionText:Begin") ) );
- QAction *action = /*secondaryAction()*/ this->actions().at(1);
- if (action) {
- action->setText(actionText);
- } else {
- if (!mSecondaryAction) {
- mSecondaryAction = new HbAction(actionText);
- connect(mSecondaryAction, SIGNAL(triggered()), this, SLOT(secondaryActionTriggered()));
- } else {
- mSecondaryAction->setText(actionText);
- }
- setSecondaryAction(mSecondaryAction);
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setSecondaryActionText:End") ) );
-}
-
-bool HbDeviceInputDialogWidget::primaryActionNull() const
-{
- return this->actions().first() == 0;
-}
-
-void HbDeviceInputDialogWidget::setPrimaryActionNull(bool isNull)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setPrimaryActionNull:Begin") ) );
- if (isNull) {
- // If there is a message box's default action, disconnect from it.
- QAction *action = /*primaryAction()*/this->actions().first();
- if (action && mPrimaryAction == 0) {
- action->disconnect(SIGNAL(triggered()), this, SLOT(primaryActionTriggered()));
- }
- setPrimaryAction(0);
- } else {
- QString text = mPrimaryAction ? mPrimaryAction->text() : QString();
- setPrimaryActionText(text);
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setPrimaryActionNull:End") ) );
-}
-
-bool HbDeviceInputDialogWidget::secondaryActionNull() const
-{
- return this->actions().at(1) == 0;
-}
-
-void HbDeviceInputDialogWidget::setSecondaryActionNull(bool isNull)
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setSecondaryActionNull:Begin") ) );
- if (isNull) {
- // If there is a message box's default action, disconnect from it.
- QAction *action = /*secondaryAction()*/ this->actions().at(1);
- if (action && mSecondaryAction == 0) {
- action->disconnect(SIGNAL(triggered()), this, SLOT(secondaryActionTriggered()));
- }
- setSecondaryAction(0);
- } else {
- QString text = mSecondaryAction ? mSecondaryAction->text() : QString();
- setSecondaryActionText(text);
- }
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::setSecondaryActionNull:End") ) );
-}
-
-// Widget is about to hide. Closing effect has ended.
-void HbDeviceInputDialogWidget::hideEvent(QHideEvent *event)
-{
- Q_UNUSED(event);
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::hideEvent:Begin") ) );
- HbInputDialog::hideEvent(event);
- emit deviceDialogClosed();
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::hideEvent:End") ) );
-}
-
-// Widget is about to show
-void HbDeviceInputDialogWidget::showEvent(QShowEvent *event)
-{
- Q_UNUSED(event);
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::showEvent:Begin") ) );
- HbInputDialog::showEvent(event);
- mShowEventReceived = true;
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::showEvent:End") ) );
-}
-
-void HbDeviceInputDialogWidget::setAnimationDefinition(QString &animationDefinition)
-{
- mAnimationDefinition = animationDefinition;
-}
-
-QString HbDeviceInputDialogWidget::animationDefinition() const
-{
- return mAnimationDefinition;
-}
-
-// Primary action triggered
-void HbDeviceInputDialogWidget::primaryActionTriggered()
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::primaryActionTriggered:Begin") ) );
- //Get the string enter by user
- QString myString = this->value().toString();
- data.insert("ok",myString);
- emit deviceDialogData(data);
- mSendAction = true;
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::primaryActionTriggered:End") ) );
-}
-
-// Secondary action triggered
-void HbDeviceInputDialogWidget::secondaryActionTriggered()
-{
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::secondaryActionTriggered:Begin") ) );
- data.insert("cancel","cancel");
- emit deviceDialogData(data);
- mSendAction = false;
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::secondaryActionTriggered:End") ) );
-}
-
-
-// Close Dialog when visibility changed
-void HbDeviceInputDialogWidget::closeDialog()
- {
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::closeDialog:Begin") ) );
- if(mHack == 1)
- {
- emit deviceDialogData(data); // first time plugin didnt called deviceDialogData and hence this hack added.
- }
- emit deviceDialogClosed();
- TRACES( RDebug::Print( _L("HbDeviceInputDialogWidget::closeDialog:End") ) );
- mHack = 0;
- }