vmbx/vmbxengine/inc/vmbxqtuihandler.h
changeset 19 e44a8c097b15
parent 12 ae8abd0db65c
child 27 7eb70891911c
--- a/vmbx/vmbxengine/inc/vmbxqtuihandler.h	Mon May 03 13:01:45 2010 +0300
+++ b/vmbx/vmbxengine/inc/vmbxqtuihandler.h	Fri May 14 16:24:46 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009-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"
@@ -22,74 +22,108 @@
 
 // INCLUDES
 #include <QObject>
+#include <QTranslator>
 #include <voicemailboxdefs.h>
 
+#include "voicemailboxdefsinternal.h"
+
 // FORWARD DECLARATION
+class CVoiceMailboxEntry;
+class TVoiceMailboxParams;
+class HbInputDialog;
 
- 
 // CLASS DECLARATION
 
 /**
 *  Dialog manager
 *
 *  @lib vmbxengine.lib
-*  @since  S60 v5.2
 */
-NONSHARABLE_CLASS( VmbxQtUiHandler ): public QObject
+class VmbxQtUiHandler : public QObject
     {
-
+    Q_OBJECT
+    
 public: // Constructors and destructor
 
     /**
     * C++ default constructor.
     *
-    * @since S60 v5.2
     */
     VmbxQtUiHandler(QObject* parent = 0 );
 
     /**
     * Destructor.
     */
-     ~VmbxQtUiHandler();
+    virtual ~VmbxQtUiHandler();
+
+     /**
+     * Initialize, load qt translator.
+     */
+     void  init();
 
     /**
     * Show mailbox query dialog
     *
-    * @since S60 v5.2
     * @param aType in TVmbxType type
-    * @param aMode Tin VmbxQueryMode mode
     * @param aNumber the voice mailbox number
     * @param aResult out the result of dialog
     */
     void showVmbxQueryDialog(const TVmbxType& aType,
-                                const TVmbxQueryMode& aMode,
-                                QString& aNumber, int& aResult);
+                             QString& aNumber, int& aResult);
 
     /**
      * Show define number in selection dialog
      * Leaves if user cancel selected.
      *
-     * @since S60 v5.2
      * @param in aType vmbx type
      * @param out aResult the result of dialog
      */
     void showDefineSelectionDialog(TVmbxType& aType, int& aResult);
 
     /**
+     * Show call number in selection dialog
+     *
+     * @param in entryList array of the defined voice mailbox entry
+     * @param out params the type TVoiceMailboxParams which should include
+     *          the service id and the type of seclected TVmbxType
+     * @param out result the result user seclected
+     */
+    void showCallSelectionDialog(
+                const QList<CVoiceMailboxEntry *> entryList,
+                TVoiceMailboxParams &params, int &result );
+
+    /**
     * Show voice mailbox information number
     *
-    * @since S60 v5.2
     * @param aNoteType in TVmbxType type
     */
-    void showInformationNote(int aNoteType);
+    void showInformationNote(const TVmbxNoteType aType);
+    
+private slots:
+    /**
+    * update Ok button status according to user input string
+    *
+    * @param aInput User input string
+    */
+    void updatePrimaryAction(const QString &aInput);
+
+private:
 
     /**
-    * Show save empty number note
-    *
-    * @since S60 v5.2
-    * @param aType in TVmbxType type
+    * Translator vmbx localization
+    */
+    QTranslator iTranslator;
+
+    /**
+    * Translator common localization
     */
-    void showSaveEmptyNote(const TVmbxType& aType);
+    QTranslator iCommonTranslator;
+    
+    /**
+    * Query and Define mailbox dialog. Own
+    */    
+    HbInputDialog *iQueryDialog;
+
     };
 
 #endif  // VMBXQTUIHANDLER_H