searchui/stateproviders/searchstateprovider/src/searchprogressivestate.cpp
author hgs
Fri, 15 Oct 2010 11:45:38 +0530
changeset 27 7a8855317cbd
parent 26 367228f82b66
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
 * All rights reserved.
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
 *
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
 * Initial Contributors:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
 *
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
 * Contributors:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
 *
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
 * Description:  Implementation of the progressive search state.
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
 *
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
 */
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
#include "searchprogressivestate.h"
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
#include "indevicehandler.h"
15
hgs
parents: 13
diff changeset
    19
#include "searchuiloader.h"
hgs
parents: 13
diff changeset
    20
#include <cpixdocument.h>
hgs
parents: 13
diff changeset
    21
#include <cpixdocumentfield.h>
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
#include <hbmainwindow.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
#include <hbview.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
#include <hblabel.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
#include <hbicon.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    26
#include <hbmenu.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
#include <hbinstance.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    28
#include <hbsearchpanel.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    29
#include <hbaction.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    30
#include <hbapplication.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    31
#include <qsortfilterproxymodel.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
#include <AknsUtils.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
#include <bitdev.h> 
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
#include <bitstd.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
#include <qbitmap.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
#include <fbs.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
#include <AknInternalIconUtils.h>
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
#include <AknIconUtils.h> 
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
    39
#include <apaidpartner.h>
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    40
#include <qpluginloader.h>
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    41
#include <eventviewerplugininterface.h>
9
hgs
parents: 7
diff changeset
    42
#include <noteseditorinterface.h>
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    43
#include <w32std.h>
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    44
#include <apgtask.h>
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    45
#include <apgcli.h>
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    46
#include <AknTaskList.h>
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
    47
#include <apacmdln.h>
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
    48
#include <xqconversions.h>
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
    49
#include <apparc.h>
9
hgs
parents: 7
diff changeset
    50
#include <qdesktopservices.h>
hgs
parents: 7
diff changeset
    51
#include <hblistwidget.h>
hgs
parents: 7
diff changeset
    52
#include <hblistwidgetitem.h>
hgs
parents: 7
diff changeset
    53
#include <hbabstractviewitem.h>
hgs
parents: 7
diff changeset
    54
#include <hblistviewitem.h>
15
hgs
parents: 13
diff changeset
    55
#include <hbactivitymanager.h>
18
hgs
parents: 16
diff changeset
    56
#include <xqaiwdecl.h>
21
hgs
parents: 18
diff changeset
    57
#include <xqaiwdeclplat.h>
18
hgs
parents: 16
diff changeset
    58
#include <qservicemanager.h>
hgs
parents: 16
diff changeset
    59
#include <qurl.h>
26
hgs
parents: 21
diff changeset
    60
#include <email_services_api.h>
hgs
parents: 21
diff changeset
    61
#include <xqrequestinfo.h>
18
hgs
parents: 16
diff changeset
    62
QTM_USE_NAMESPACE
27
hgs
parents: 26
diff changeset
    63
26
hgs
parents: 21
diff changeset
    64
16
hgs
parents: 15
diff changeset
    65
const int intial_iteration = 3;
hgs
parents: 15
diff changeset
    66
const int batch_iteration = 20;
26
hgs
parents: 21
diff changeset
    67
21
hgs
parents: 18
diff changeset
    68
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    70
// SearchProgressiveState::SearchProgressiveState
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    71
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    72
SearchProgressiveState::SearchProgressiveState(QState *parent) :
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
    QState(parent), mMainWindow(NULL), mView(NULL), mListView(NULL),
15
hgs
parents: 13
diff changeset
    74
            mSearchHandler(NULL), mNotesEditor(0), mAiwMgr(0), mRequest(0)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
    {
16
hgs
parents: 15
diff changeset
    76
    mUiLoader = SearchUiLoader::instance();
26
hgs
parents: 21
diff changeset
    77
    connect(mUiLoader, SIGNAL(dbChanged), this, SLOT(slotdbChanged()));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    79
    mMainWindow = hbInstance->allMainWindows().at(0);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    80
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
    81
    mAiwMgr = new XQApplicationManager;
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    82
15
hgs
parents: 13
diff changeset
    83
    mView = mUiLoader->View();
hgs
parents: 13
diff changeset
    84
    mListView = mUiLoader->ListWidget();
hgs
parents: 13
diff changeset
    85
    mSearchPanel = mUiLoader->SearchPanel();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    86
15
hgs
parents: 13
diff changeset
    87
    HbStyle style;
hgs
parents: 13
diff changeset
    88
    qreal x;
hgs
parents: 13
diff changeset
    89
    style.parameter("hb-param-graphic-size-primary-large", x);
hgs
parents: 13
diff changeset
    90
    QSizeF size(x, x);
hgs
parents: 13
diff changeset
    91
    mListViewIconSize = size.toSize();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    92
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    93
    if (mSearchPanel)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
        {
9
hgs
parents: 7
diff changeset
    95
        mSearchPanel->setPlaceholderText(hbTrId(
hgs
parents: 7
diff changeset
    96
                "txt_search_dialog_search_device"));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    97
        }
27
hgs
parents: 26
diff changeset
    98
   
hgs
parents: 26
diff changeset
    99
    activation  = new AfActivation(this);
hgs
parents: 26
diff changeset
   100
          connect( activation, SIGNAL( activated( Af::ActivationReason, QString, QVariantHash ) ), this, SLOT( slotactivityRequested( Af::ActivationReason, QString, QVariantHash ) ) );
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   102
    constructHandlers();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   103
    if (mView && mMainWindow)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   104
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   105
        mMainWindow->addView(mView);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   106
        mMainWindow->setCurrentView(mView);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   107
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   108
    mDatabasecount = 0;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   109
    mLinkindex = 0;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   110
    mResultcount = 0;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   111
    mResultparser = 0;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   112
    loadSettings = true;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   113
27
hgs
parents: 26
diff changeset
   114
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   115
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   116
#ifdef OST_TRACE_COMPILER_IN_USE 
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   117
    //start() the timers to avoid worrying abt having to start()/restart() later
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   118
    m_categorySearchApiTime.start();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   119
    m_categorySearchUiTime.start();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   120
    m_totalSearchUiTime.start();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   121
    m_categoryGetDocumentApiTime.start();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   122
    m_getDocumentCatergoryTimeAccumulator = 0;
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   123
#endif
9
hgs
parents: 7
diff changeset
   124
hgs
parents: 7
diff changeset
   125
    //Notes Editor Interface loading 
hgs
parents: 7
diff changeset
   126
    QDir dir(NOTES_EDITOR_PLUGIN_PATH);
hgs
parents: 7
diff changeset
   127
    QString pluginName = dir.absoluteFilePath(NOTES_EDITOR_PLUGIN_NAME);
hgs
parents: 7
diff changeset
   128
hgs
parents: 7
diff changeset
   129
    // Create plugin loader.
hgs
parents: 7
diff changeset
   130
    mNotespluginLoader = new QPluginLoader(pluginName);
hgs
parents: 7
diff changeset
   131
hgs
parents: 7
diff changeset
   132
    if (mNotespluginLoader)
hgs
parents: 7
diff changeset
   133
        {
hgs
parents: 7
diff changeset
   134
        // Load the plugin.
hgs
parents: 7
diff changeset
   135
        mNotespluginLoader->load();
hgs
parents: 7
diff changeset
   136
hgs
parents: 7
diff changeset
   137
        QObject *plugin = qobject_cast<QObject*> (
hgs
parents: 7
diff changeset
   138
                mNotespluginLoader->instance());
hgs
parents: 7
diff changeset
   139
        mNotesEditor = qobject_cast<NotesEditorInterface*> (plugin);
hgs
parents: 7
diff changeset
   140
        }
hgs
parents: 7
diff changeset
   141
hgs
parents: 7
diff changeset
   142
    mOnlineQueryAvailable = false;
26
hgs
parents: 21
diff changeset
   143
   
16
hgs
parents: 15
diff changeset
   144
    // creating the handler if it is not prepared, useful when user try to create before 
hgs
parents: 15
diff changeset
   145
    mValidateHandlerCreation = false;
26
hgs
parents: 21
diff changeset
   146
hgs
parents: 21
diff changeset
   147
    // to retrive the search documents form where it ends when search server crashes
hgs
parents: 21
diff changeset
   148
    mContinuationSearch = false;
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   149
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   150
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   151
// SearchProgressiveState::~SearchProgressiveState
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   152
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   153
SearchProgressiveState::~SearchProgressiveState()
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   154
    {
26
hgs
parents: 21
diff changeset
   155
    if(mRequest)
hgs
parents: 21
diff changeset
   156
        {
hgs
parents: 21
diff changeset
   157
        delete mRequest;
hgs
parents: 21
diff changeset
   158
        }
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   159
    if (mAiwMgr)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   160
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   161
        delete mAiwMgr;
26
hgs
parents: 21
diff changeset
   162
        }    
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   163
    for (int i = 0; i < mSearchHandlerList.count(); i++)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   164
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   165
        delete mSearchHandlerList.at(i);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   166
        }
9
hgs
parents: 7
diff changeset
   167
    if (mNotespluginLoader)
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   168
        {
9
hgs
parents: 7
diff changeset
   169
        mNotespluginLoader->unload();
hgs
parents: 7
diff changeset
   170
        delete mNotespluginLoader;
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   171
        }
15
hgs
parents: 13
diff changeset
   172
    SearchUiLoader::deleteinstance();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   173
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   174
// ---------------------------------------------------------------------------
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   175
// SearchProgressiveState::constructHandlers
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   176
// ---------------------------------------------------------------------------
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   177
void SearchProgressiveState::constructHandlers()
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   178
    {
26
hgs
parents: 21
diff changeset
   179
    for (int i = 0; i < mSearchHandlerList.count(); i++)
hgs
parents: 21
diff changeset
   180
        {
hgs
parents: 21
diff changeset
   181
        disconnect(mSearchHandlerList.at(i),
hgs
parents: 21
diff changeset
   182
                SIGNAL(handleAsyncSearchResult(int,int)), this,
hgs
parents: 21
diff changeset
   183
                SLOT(slotonAsyncSearchComplete(int,int)));
hgs
parents: 21
diff changeset
   184
        disconnect(mSearchHandlerList.at(i),
hgs
parents: 21
diff changeset
   185
                SIGNAL(handleDocument(int,CpixDocument*)), this,
hgs
parents: 21
diff changeset
   186
                SLOT(slotonGetDocumentComplete(int,CpixDocument*)));
hgs
parents: 21
diff changeset
   187
        disconnect(mSearchHandlerList.at(i),
hgs
parents: 21
diff changeset
   188
                SIGNAL(handleBatchDocument(int,int,CpixDocument**)), this,
hgs
parents: 21
diff changeset
   189
                SLOT(slotonGetBatchDocumentComplete(int,int,CpixDocument**)));
hgs
parents: 21
diff changeset
   190
        delete mSearchHandlerList.at(i);
hgs
parents: 21
diff changeset
   191
        }
hgs
parents: 21
diff changeset
   192
    mSearchHandlerList.clear();
15
hgs
parents: 13
diff changeset
   193
26
hgs
parents: 21
diff changeset
   194
    for (int i = 0; i < mUiLoader->ContentInfoList().count(); i++)
15
hgs
parents: 13
diff changeset
   195
        {
26
hgs
parents: 21
diff changeset
   196
        InDeviceHandler* handler = NULL;
hgs
parents: 21
diff changeset
   197
        handler = new InDeviceHandler();
hgs
parents: 21
diff changeset
   198
        handler->setCategory(mUiLoader->ContentInfoList().at(i)->getBaseApp());
hgs
parents: 21
diff changeset
   199
        mSearchHandlerList.append(handler);
hgs
parents: 21
diff changeset
   200
        if(mUiLoader->ContentInfoList().at(i)->getTranslationPath().length())
hgs
parents: 21
diff changeset
   201
            {
hgs
parents: 21
diff changeset
   202
            loadTranslator(mUiLoader->ContentInfoList().at(i)->getTranslationPath());
hgs
parents: 21
diff changeset
   203
            }
15
hgs
parents: 13
diff changeset
   204
        }
26
hgs
parents: 21
diff changeset
   205
    for (int i = 0; i < mSearchHandlerList.count(); i++)
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   206
        {
26
hgs
parents: 21
diff changeset
   207
        connect(mSearchHandlerList.at(i),
hgs
parents: 21
diff changeset
   208
                SIGNAL(handleAsyncSearchResult(int,int)), this,
hgs
parents: 21
diff changeset
   209
                SLOT(slotonAsyncSearchComplete(int,int)));
hgs
parents: 21
diff changeset
   210
        connect(mSearchHandlerList.at(i),
hgs
parents: 21
diff changeset
   211
                SIGNAL(handleDocument(int,CpixDocument*)), this,
hgs
parents: 21
diff changeset
   212
                SLOT(slotonGetDocumentComplete(int,CpixDocument*)));
hgs
parents: 21
diff changeset
   213
        connect(mSearchHandlerList.at(i),
hgs
parents: 21
diff changeset
   214
                SIGNAL(handleBatchDocument(int,int,CpixDocument**)), this,
hgs
parents: 21
diff changeset
   215
                SLOT(slotonGetBatchDocumentComplete(int,int,CpixDocument**)));
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   216
        }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   217
    }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   218
// ---------------------------------------------------------------------------
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   219
// SearchProgressiveState::onEntry
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   220
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   221
void SearchProgressiveState::onEntry(QEvent *event)
26
hgs
parents: 21
diff changeset
   222
    {
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   223
    QState::onEntry(event);
15
hgs
parents: 13
diff changeset
   224
    mStateStatus = true;// used for conditional execution for the slots that are connected as transitions
hgs
parents: 13
diff changeset
   225
    if (mSearchPanel)
hgs
parents: 13
diff changeset
   226
        {
hgs
parents: 13
diff changeset
   227
        mSearchPanel->setPlaceholderText(hbTrId(
hgs
parents: 13
diff changeset
   228
                "txt_search_dialog_search_device"));
hgs
parents: 13
diff changeset
   229
        mSearchPanel->setProgressive(true);
hgs
parents: 13
diff changeset
   230
        }
hgs
parents: 13
diff changeset
   231
    if (mListView)
hgs
parents: 13
diff changeset
   232
        {
hgs
parents: 13
diff changeset
   233
        mListView->setVisible(true);
hgs
parents: 13
diff changeset
   234
        }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   235
    activateSignals();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   236
    // If this is not the current view, we're getting back from plugin view  
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   237
    if (mMainWindow)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   238
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   239
        if (mMainWindow->currentView() != mView)
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   240
            {
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   241
            mMainWindow->setCurrentView(mView, true);
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   242
            }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   243
        mMainWindow->show();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   244
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   245
    if (loadSettings)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   246
        {
16
hgs
parents: 15
diff changeset
   247
        // to get the intial settings form delimeter  
9
hgs
parents: 7
diff changeset
   248
        emit switchProToSettingsState();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   249
        loadSettings = false;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   250
        }
9
hgs
parents: 7
diff changeset
   251
    if (mOnlineQueryAvailable)
hgs
parents: 7
diff changeset
   252
        {
hgs
parents: 7
diff changeset
   253
        mSearchPanel->setCriteria(mOriginalString);
hgs
parents: 7
diff changeset
   254
        mOnlineQueryAvailable = false;
hgs
parents: 7
diff changeset
   255
        }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   256
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   257
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   258
// SearchProgressiveState::onExit
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   259
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   260
void SearchProgressiveState::onExit(QEvent *event)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   261
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   262
    QState::onExit(event);
15
hgs
parents: 13
diff changeset
   263
    mStateStatus = false;
16
hgs
parents: 15
diff changeset
   264
    deActivateSignals();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   265
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   266
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   267
// SearchProgressiveState::activateSignals
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   268
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   269
void SearchProgressiveState::activateSignals()
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   270
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   271
    if (mListView)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   272
        {
9
hgs
parents: 7
diff changeset
   273
        connect(mListView, SIGNAL(activated(HbListWidgetItem *)), this,
26
hgs
parents: 21
diff changeset
   274
                SLOT(slotopenResultitem(HbListWidgetItem *)));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   275
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   276
    if (mSearchPanel)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   277
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   278
        connect(mSearchPanel, SIGNAL(criteriaChanged(QString)), this,
26
hgs
parents: 21
diff changeset
   279
                SLOT(slotstartNewSearch(QString)));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   280
        connect(mSearchPanel, SIGNAL(searchOptionsClicked()), this,
26
hgs
parents: 21
diff changeset
   281
                SLOT(slotsetSettings()));
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   282
        }
26
hgs
parents: 21
diff changeset
   283
    connect(mMainWindow, SIGNAL(viewReady()), this, SLOT(slotviewReady()));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   284
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   285
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   286
// SearchProgressiveState::deActivateSignals
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   287
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   288
void SearchProgressiveState::deActivateSignals()
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   289
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   290
    if (mListView)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   291
        {
9
hgs
parents: 7
diff changeset
   292
        disconnect(mListView, SIGNAL(activated(HbListWidgetItem *)), this,
26
hgs
parents: 21
diff changeset
   293
                SLOT(slotopenResultitem(HbListWidgetItem *)));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   294
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   295
    if (mSearchPanel)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   296
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   297
        disconnect(mSearchPanel, SIGNAL(criteriaChanged(QString)), this,
26
hgs
parents: 21
diff changeset
   298
                SLOT(slotstartNewSearch(QString)));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   299
        disconnect(mSearchPanel, SIGNAL(searchOptionsClicked()), this,
26
hgs
parents: 21
diff changeset
   300
                SLOT(slotsetSettings()));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   301
        }
26
hgs
parents: 21
diff changeset
   302
    disconnect(mMainWindow, SIGNAL(viewReady()), this, SLOT(slotviewReady()));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   303
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   304
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   305
// SearchProgressiveState::slotonAsyncSearchComplete
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   306
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   307
void SearchProgressiveState::slotonAsyncSearchComplete(int aError,
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   308
        int aResultCount)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   309
    {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   310
    PERF_CAT_API_ENDLOG
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   311
    PERF_CAT_HITS_ENDLOG
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   312
    if (aError != 0)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   313
        {
26
hgs
parents: 21
diff changeset
   314
        if (aError == KErrServerTerminated) // server terminated refresh the handlers
hgs
parents: 21
diff changeset
   315
            {
hgs
parents: 21
diff changeset
   316
            constructHandlers();
hgs
parents: 21
diff changeset
   317
            mDatabasecount = 0;
hgs
parents: 21
diff changeset
   318
            mLinkindex = 0;
hgs
parents: 21
diff changeset
   319
            }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   320
        searchOnCategory(mSearchString);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   321
        return;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   322
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   323
    if (aResultCount == 0)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   324
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   325
        searchOnCategory(mSearchString);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   326
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   327
    else if (aResultCount > 0)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   328
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   329
        mResultcount = aResultCount;
26
hgs
parents: 21
diff changeset
   330
        if (mContinuationSearch)
hgs
parents: 21
diff changeset
   331
            {
hgs
parents: 21
diff changeset
   332
            mContinuationSearch = false;
hgs
parents: 21
diff changeset
   333
            }
hgs
parents: 21
diff changeset
   334
        else
hgs
parents: 21
diff changeset
   335
            {
hgs
parents: 21
diff changeset
   336
            mResultparser = 0;
hgs
parents: 21
diff changeset
   337
            }
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   338
        PERF_CAT_GETDOC_TIME_RESTART
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   339
        PERF_CAT_GETDOC_ACCUMULATOR_RESET
26
hgs
parents: 21
diff changeset
   340
        if (mListView->count() >= intial_iteration)
hgs
parents: 21
diff changeset
   341
            {
hgs
parents: 21
diff changeset
   342
            mSearchHandler->getBatchDocumentAsyncAtIndex(mResultparser,
hgs
parents: 21
diff changeset
   343
                    batch_iteration);
hgs
parents: 21
diff changeset
   344
            }
hgs
parents: 21
diff changeset
   345
        else
hgs
parents: 21
diff changeset
   346
            {
hgs
parents: 21
diff changeset
   347
            mSearchHandler->getDocumentAsyncAtIndex(mResultparser);
hgs
parents: 21
diff changeset
   348
            }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   349
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   350
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   351
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   352
// SearchProgressiveState::slotonGetDocumentComplete
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   353
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   354
void SearchProgressiveState::slotonGetDocumentComplete(int aError,
15
hgs
parents: 13
diff changeset
   355
        CpixDocument* aDoc)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   356
    {
26
hgs
parents: 21
diff changeset
   357
    if (aError == KErrServerTerminated) // server terminated refresh the handlers
hgs
parents: 21
diff changeset
   358
        {
hgs
parents: 21
diff changeset
   359
        constructHandlers();
hgs
parents: 21
diff changeset
   360
        mDatabasecount = 0;
hgs
parents: 21
diff changeset
   361
        mLinkindex = 0;
hgs
parents: 21
diff changeset
   362
        searchOnCategory(mSearchString);
hgs
parents: 21
diff changeset
   363
        mContinuationSearch = true;
hgs
parents: 21
diff changeset
   364
        return;
hgs
parents: 21
diff changeset
   365
        }
16
hgs
parents: 15
diff changeset
   366
    if (aError)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   367
        return;
16
hgs
parents: 15
diff changeset
   368
    parseDocument(aDoc);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   369
    mResultparser++;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   370
    if (mResultparser < mResultcount)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   371
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   372
        PERF_CAT_GETDOC_TIME_RESTART
26
hgs
parents: 21
diff changeset
   373
        if (mListView->count() < intial_iteration)
16
hgs
parents: 15
diff changeset
   374
            {
hgs
parents: 15
diff changeset
   375
            mSearchHandler->getDocumentAsyncAtIndex(mResultparser);
hgs
parents: 15
diff changeset
   376
            }
hgs
parents: 15
diff changeset
   377
        else
hgs
parents: 15
diff changeset
   378
            {
hgs
parents: 15
diff changeset
   379
            mSearchHandler->getBatchDocumentAsyncAtIndex(mResultparser,
hgs
parents: 15
diff changeset
   380
                    batch_iteration);
hgs
parents: 15
diff changeset
   381
            }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   382
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   383
    else
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   384
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   385
        PERF_CAT_GETDOC_ACCUMULATOR_ENDLOG
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   386
        searchOnCategory(mSearchString);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   387
        }
16
hgs
parents: 15
diff changeset
   388
    }
hgs
parents: 15
diff changeset
   389
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   390
// SearchProgressiveState::slotonGetDocumentComplete
16
hgs
parents: 15
diff changeset
   391
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   392
void SearchProgressiveState::slotonGetBatchDocumentComplete(int aError,
16
hgs
parents: 15
diff changeset
   393
        int aCount, CpixDocument** aDoc)
hgs
parents: 15
diff changeset
   394
    {
26
hgs
parents: 21
diff changeset
   395
    if (aError == KErrServerTerminated) // server terminated refresh the handlers
hgs
parents: 21
diff changeset
   396
        {
hgs
parents: 21
diff changeset
   397
        constructHandlers();
hgs
parents: 21
diff changeset
   398
        mDatabasecount = 0;
hgs
parents: 21
diff changeset
   399
        mLinkindex = 0;
hgs
parents: 21
diff changeset
   400
        searchOnCategory(mSearchString);
hgs
parents: 21
diff changeset
   401
        mContinuationSearch = true;
hgs
parents: 21
diff changeset
   402
        return;
hgs
parents: 21
diff changeset
   403
        }
16
hgs
parents: 15
diff changeset
   404
    if (aError)
hgs
parents: 15
diff changeset
   405
        return;
hgs
parents: 15
diff changeset
   406
    for (int i = 0; i < aCount; i++)
hgs
parents: 15
diff changeset
   407
        {
hgs
parents: 15
diff changeset
   408
        parseDocument(aDoc[i]);
hgs
parents: 15
diff changeset
   409
        }
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   410
    delete aDoc;
16
hgs
parents: 15
diff changeset
   411
    mResultparser += aCount;
hgs
parents: 15
diff changeset
   412
    if (mResultparser < mResultcount)
hgs
parents: 15
diff changeset
   413
        {
hgs
parents: 15
diff changeset
   414
        PERF_CAT_GETDOC_TIME_RESTART
hgs
parents: 15
diff changeset
   415
        mSearchHandler->getBatchDocumentAsyncAtIndex(mResultparser,
hgs
parents: 15
diff changeset
   416
                batch_iteration);
hgs
parents: 15
diff changeset
   417
        }
hgs
parents: 15
diff changeset
   418
    else
hgs
parents: 15
diff changeset
   419
        {
hgs
parents: 15
diff changeset
   420
        PERF_CAT_GETDOC_ACCUMULATOR_ENDLOG
hgs
parents: 15
diff changeset
   421
        searchOnCategory(mSearchString);
hgs
parents: 15
diff changeset
   422
        }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   423
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   424
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   425
// SearchProgressiveState::slotopenResultitem
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   426
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   427
void SearchProgressiveState::slotopenResultitem(HbListWidgetItem * item)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   428
    {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   429
    if (item == NULL)
16
hgs
parents: 15
diff changeset
   430
        return;
hgs
parents: 15
diff changeset
   431
    PERF_RESULT_ITEM_LAUNCH_TIME_RESTART
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   432
    QList<QVariant> args;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   433
    bool t;
26
hgs
parents: 21
diff changeset
   434
    if(mRequest)
hgs
parents: 21
diff changeset
   435
       delete mRequest;    
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   436
    mRequest = NULL;
26
hgs
parents: 21
diff changeset
   437
    if (item->data(Qt::UserRole + 1).toString().contains(CONTACTCATEGORY))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   438
        {
26
hgs
parents: 21
diff changeset
   439
        PERF_RESULT_ITEM_FOR_LAUNCHING(CONTACTCATEGORY)
21
hgs
parents: 18
diff changeset
   440
        mRequest = mAiwMgr->create(XQI_CONTACTS_VIEW,XQOP_CONTACTS_VIEW_CONTACT_CARD, true);
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   441
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   442
        int uid = (item->data(Qt::UserRole)).toInt(&t);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   443
        args << uid;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   444
        }
26
hgs
parents: 21
diff changeset
   445
    else if (item->data(Qt::UserRole + 1).toString().contains(BOOKMARKCATEGORY))
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   446
        {
26
hgs
parents: 21
diff changeset
   447
        PERF_RESULT_ITEM_FOR_LAUNCHING(BOOKMARKCATEGORY)
9
hgs
parents: 7
diff changeset
   448
        QDesktopServices::openUrl(item->data(Qt::UserRole + 2).toString());
16
hgs
parents: 15
diff changeset
   449
        PERF_RESULT_ITEM_LAUNCH_TIME_ENDLOG ("")
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   450
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   451
        }
26
hgs
parents: 21
diff changeset
   452
    else if (item->data(Qt::UserRole + 1).toString().contains(CALENDARCATEGORY))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   453
        {
18
hgs
parents: 16
diff changeset
   454
        QDir pluginDir = QDir(CALENDAR_EVENTVIEWER_PLUGIN_PATH);
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   455
        QPluginLoader *calAgandaViewerPluginLoader = new QPluginLoader(
18
hgs
parents: 16
diff changeset
   456
                pluginDir.absoluteFilePath(CALENDAR_EVENTVIEWER_PLUGIN_NAME));
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   457
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   458
        calAgandaViewerPluginInstance = qobject_cast<
16
hgs
parents: 15
diff changeset
   459
                EventViewerPluginInterface *> (
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   460
                calAgandaViewerPluginLoader->instance());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   461
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   462
        connect(calAgandaViewerPluginInstance, SIGNAL(viewingCompleted()),
26
hgs
parents: 21
diff changeset
   463
                this, SLOT(slotviewingCompleted()));
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   464
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   465
        calAgandaViewerPluginInstance->viewEvent(
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   466
                item->data(Qt::UserRole).toInt(),
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   467
                EventViewerPluginInterface::ActionEditDelete, NULL);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   468
        }
26
hgs
parents: 21
diff changeset
   469
    else if (item->data(Qt::UserRole + 1).toString().contains(APPLICATIONCATEGORY))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   470
        {
26
hgs
parents: 21
diff changeset
   471
        PERF_RESULT_ITEM_FOR_LAUNCHING(APPLICATIONCATEGORY)
18
hgs
parents: 16
diff changeset
   472
        TRAP_IGNORE(LaunchApplicationL((item->data(Qt::UserRole)).toString()));
9
hgs
parents: 7
diff changeset
   473
        PERF_RESULT_ITEM_LAUNCH_TIME_ENDLOG("")
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   474
        }
26
hgs
parents: 21
diff changeset
   475
    else if (item->data(Qt::UserRole + 1).toString().contains(FILECATEGORY))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   476
        {
26
hgs
parents: 21
diff changeset
   477
        PERF_RESULT_ITEM_FOR_LAUNCHING(FILECATEGORY)
7
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   478
        QString uid = item->data(Qt::UserRole).toString();
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   479
        QFile file(uid);
13
hgs
parents: 9
diff changeset
   480
        mRequest = mAiwMgr->create(file, true);
7
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   481
        args << file.fileName();
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   482
        }
26
hgs
parents: 21
diff changeset
   483
    else if ((item->data(Qt::UserRole + 1).toString().contains(VIDEOCATEGORY))
hgs
parents: 21
diff changeset
   484
            || (item->data(Qt::UserRole + 1).toString().contains(AUDIOCATEGORY)))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   485
        {
26
hgs
parents: 21
diff changeset
   486
        PERF_RESULT_ITEM_FOR_LAUNCHING(AUDIOCATEGORY)
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   487
        QString uid = getDrivefromMediaId(
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   488
                item->data(Qt::UserRole + 2).toString());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   489
        uid.append(':');
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   490
        uid.append(item->data(Qt::UserRole).toString());
7
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   491
        QFile file(uid);
26
hgs
parents: 21
diff changeset
   492
        mRequest = mAiwMgr->create(file, false);
7
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   493
        args << file.fileName();
26
hgs
parents: 21
diff changeset
   494
        if(mRequest)
hgs
parents: 21
diff changeset
   495
            {
hgs
parents: 21
diff changeset
   496
            QVariant title(hbTrId("txt_search_title_search"));
hgs
parents: 21
diff changeset
   497
            XQRequestInfo info;
hgs
parents: 21
diff changeset
   498
            info.setInfo(XQINFO_KEY_WINDOW_TITLE, title);
hgs
parents: 21
diff changeset
   499
            mRequest->setInfo(info);
hgs
parents: 21
diff changeset
   500
            mRequest->setBackground(false);
hgs
parents: 21
diff changeset
   501
            mRequest->setSynchronous(false);        
hgs
parents: 21
diff changeset
   502
            }
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   503
        }
26
hgs
parents: 21
diff changeset
   504
    else if ((item->data(Qt::UserRole + 1).toString().contains(IMAGECATEGORY)))
hgs
parents: 21
diff changeset
   505
            {
hgs
parents: 21
diff changeset
   506
            PERF_RESULT_ITEM_FOR_LAUNCHING(IMAGECATEGORY)
hgs
parents: 21
diff changeset
   507
            QString uid = getDrivefromMediaId(
hgs
parents: 21
diff changeset
   508
                    item->data(Qt::UserRole + 2).toString());
hgs
parents: 21
diff changeset
   509
            uid.append(':');
hgs
parents: 21
diff changeset
   510
            uid.append(item->data(Qt::UserRole).toString());
hgs
parents: 21
diff changeset
   511
            QFile file(uid);
hgs
parents: 21
diff changeset
   512
            mRequest = mAiwMgr->create(file, true);
hgs
parents: 21
diff changeset
   513
            args << file.fileName();
hgs
parents: 21
diff changeset
   514
            }    
hgs
parents: 21
diff changeset
   515
    else if (item->data(Qt::UserRole + 1).toString().contains(NOTESCATEGORY))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   516
        {
26
hgs
parents: 21
diff changeset
   517
        PERF_RESULT_ITEM_FOR_LAUNCHING(NOTESCATEGORY)
16
hgs
parents: 15
diff changeset
   518
        if (mNotesEditor)
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   519
            {
9
hgs
parents: 7
diff changeset
   520
            mNotesEditor->edit(item->data(Qt::UserRole).toInt());
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   521
            }
9
hgs
parents: 7
diff changeset
   522
        PERF_RESULT_ITEM_LAUNCH_TIME_ENDLOG("")
hgs
parents: 7
diff changeset
   523
        }
26
hgs
parents: 21
diff changeset
   524
    else if (item->data(Qt::UserRole + 1).toString().contains(EMAILCATEGORY))
9
hgs
parents: 7
diff changeset
   525
        {
26
hgs
parents: 21
diff changeset
   526
        QVariantList  listarg;        
hgs
parents: 21
diff changeset
   527
        listarg.append(item->data(Qt::UserRole + 2).toULongLong(&t));
hgs
parents: 21
diff changeset
   528
        listarg.append(item->data(Qt::UserRole + 3).toULongLong(&t));
hgs
parents: 21
diff changeset
   529
        listarg.append(item->data(Qt::UserRole).toULongLong(&t));
hgs
parents: 21
diff changeset
   530
        
hgs
parents: 21
diff changeset
   531
        QVariant idListAsVariant =  QVariant::fromValue(listarg);
hgs
parents: 21
diff changeset
   532
        
hgs
parents: 21
diff changeset
   533
        mRequest = mAiwMgr->create(XQI_EMAIL_MESSAGE_VIEW,XQOP_EMAIL_MESSAGE_VIEW, true);       
hgs
parents: 21
diff changeset
   534
        args.append(idListAsVariant);
hgs
parents: 21
diff changeset
   535
        args.append(EmailNoFlags);
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   536
        }
26
hgs
parents: 21
diff changeset
   537
    else if (item->data(Qt::UserRole + 1).toString().contains(MESSAGECATEGORY))
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   538
        {
26
hgs
parents: 21
diff changeset
   539
        PERF_RESULT_ITEM_FOR_LAUNCHING(MESSAGECATEGORY)
21
hgs
parents: 18
diff changeset
   540
        mRequest = mAiwMgr->create(XQI_MESSAGE_VIEW, XQOP_MESSAGE_VIEW, true);
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   541
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   542
        int uid = (item->data(Qt::UserRole)).toInt(&t);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   543
        args << uid;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   544
        }
26
hgs
parents: 21
diff changeset
   545
    else if (item->data(Qt::UserRole + 1).toString().contains(SUGGESTIONLINKS))
9
hgs
parents: 7
diff changeset
   546
        {
16
hgs
parents: 15
diff changeset
   547
        emit launchLink((item->data(Qt::UserRole)).toInt(&t), mOriginalString);
9
hgs
parents: 7
diff changeset
   548
        }
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   549
    if (mRequest)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   550
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   551
        connect(mRequest, SIGNAL(requestOk(const QVariant&)), this,
26
hgs
parents: 21
diff changeset
   552
                SLOT(slothandleOk(const QVariant&)));
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   553
        connect(mRequest, SIGNAL(requestError(int,const QString&)), this,
26
hgs
parents: 21
diff changeset
   554
                SLOT(slothandleError(int,const QString&)));// Connect error handling signal or apply lastError function instead.
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   555
        mRequest->setArguments(args);
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   556
        if (!mRequest->send())// Make the request
9
hgs
parents: 7
diff changeset
   557
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   558
            {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   559
            qDebug() << "AIW-ERROR: Send failed" << mRequest->lastError();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   560
            }
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   561
        disconnect(mRequest, SIGNAL(requestOk(const QVariant&)), this,
26
hgs
parents: 21
diff changeset
   562
                SLOT(slothandleOk(const QVariant&)));
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   563
        disconnect(mRequest, SIGNAL(requestError(int,const QString&)), this,
26
hgs
parents: 21
diff changeset
   564
                SLOT(slothandleError(int,const QString&)));// Connect error handling signal or apply lastError function instead.
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   565
        }
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   566
    else
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   567
        {
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   568
        qDebug() << "AIW-ERROR: NULL request";
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   569
        return;
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   570
        }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   571
    }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   572
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   573
// SearchProgressiveState::slothandleOk
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   574
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   575
void SearchProgressiveState::slothandleOk(const QVariant& var)
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   576
    {
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   577
    Q_UNUSED(var);
16
hgs
parents: 15
diff changeset
   578
    PERF_RESULT_ITEM_LAUNCH_TIME_ENDLOG ("")
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   579
    }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   580
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   581
// SearchProgressiveState::slothandleError
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   582
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   583
void SearchProgressiveState::slothandleError(int ret, const QString& var)
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   584
    {
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   585
    Q_UNUSED(ret);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   586
    Q_UNUSED(var);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   587
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   588
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   589
// SearchProgressiveState::createSuggestionLink
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   590
// ---------------------------------------------------------------------------
9
hgs
parents: 7
diff changeset
   591
void SearchProgressiveState::createSuggestionLink()
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   592
    {
9
hgs
parents: 7
diff changeset
   593
    QString linkString = QString(hbTrId("txt_search_list_search_for_1").arg(
hgs
parents: 7
diff changeset
   594
            mOriginalString));
hgs
parents: 7
diff changeset
   595
    QMapIterator<int, HbIcon> i(mISprovidersIcon);
hgs
parents: 7
diff changeset
   596
    while (i.hasNext())
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   597
        {
9
hgs
parents: 7
diff changeset
   598
        i.next();
hgs
parents: 7
diff changeset
   599
        HbListWidgetItem* listitem = new HbListWidgetItem();
hgs
parents: 7
diff changeset
   600
        listitem->setText(linkString);
hgs
parents: 7
diff changeset
   601
        listitem->setData(i.key(), Qt::UserRole);
hgs
parents: 7
diff changeset
   602
        listitem->setData(i.value(), Qt::DecorationRole);
26
hgs
parents: 21
diff changeset
   603
        listitem->setData(SUGGESTIONLINKS, Qt::UserRole + 1);
9
hgs
parents: 7
diff changeset
   604
        mListView->addItem(listitem);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   605
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   606
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   607
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   608
// SearchProgressiveState::noResultsFound
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   609
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   610
void SearchProgressiveState::noResultsFound(QString aKeyword)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   611
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   612
    if (aKeyword.length())
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   613
        {
9
hgs
parents: 7
diff changeset
   614
        HbListWidgetItem* listitem = new HbListWidgetItem();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   615
        QString noResultMsg = QString("<align=\"center\">" + hbTrId(
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   616
                "txt_search_list_no_match_found"));
9
hgs
parents: 7
diff changeset
   617
        listitem->setText(noResultMsg);
hgs
parents: 7
diff changeset
   618
        mListView->addItem(listitem);
hgs
parents: 7
diff changeset
   619
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   620
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   621
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   622
// ---------------------------------------------------------------------------
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   623
// SearchProgressiveState::clear
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   624
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   625
void SearchProgressiveState::clear()
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   626
    {
9
hgs
parents: 7
diff changeset
   627
    mListView->clear();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   628
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   629
// ---------------------------------------------------------------------------
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   630
// SearchProgressiveState::searchOnCategory
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   631
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   632
void SearchProgressiveState::searchOnCategory(const QString aKeyword)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   633
    {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   634
#ifdef OST_TRACE_COMPILER_IN_USE
16
hgs
parents: 15
diff changeset
   635
    if (mDatabasecount != 0)
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   636
        {//Search just started.
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   637
        PERF_CAT_UI_ENDLOG
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   638
        }
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   639
    PERF_CAT_UI_TIME_RESTART
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   640
#endif
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   641
    mResultparser = 0;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   642
    mResultcount = 0;
26
hgs
parents: 21
diff changeset
   643
    mSearchHandler = NULL;
hgs
parents: 21
diff changeset
   644
    if (mDatabasecount < mUiLoader->ContentInfoList().count())
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   645
        {
26
hgs
parents: 21
diff changeset
   646
        for (int i = 0; i < mUiLoader->ContentInfoList().count(); i++)
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   647
            {
26
hgs
parents: 21
diff changeset
   648
            //skip all categories if "selectall" option get selected, skip other iterations             
hgs
parents: 21
diff changeset
   649
            if (i == 0 && mUiLoader->ContentInfoList().at(i)->getSelected())
hgs
parents: 21
diff changeset
   650
                {
hgs
parents: 21
diff changeset
   651
                mSearchHandler = mSearchHandlerList.at(i);
hgs
parents: 21
diff changeset
   652
                mDatabasecount = mUiLoader->ContentInfoList().count();
hgs
parents: 21
diff changeset
   653
                break;
hgs
parents: 21
diff changeset
   654
                }
hgs
parents: 21
diff changeset
   655
            if (mUiLoader->ContentInfoList().at(i)->getSelected()
hgs
parents: 21
diff changeset
   656
                    && (!mUiLoader->ContentInfoList().at(i)->getSearchProgress()))
hgs
parents: 21
diff changeset
   657
                {             
hgs
parents: 21
diff changeset
   658
                mSearchHandler = mSearchHandlerList.at(i);
hgs
parents: 21
diff changeset
   659
                mUiLoader->ContentInfoList().at(i)->setSearchProgress(true);
hgs
parents: 21
diff changeset
   660
                break;
hgs
parents: 21
diff changeset
   661
                }            
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   662
            }
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   663
        mDatabasecount++;
15
hgs
parents: 13
diff changeset
   664
        if (mSearchHandler != NULL && mSearchHandler->isPrepared())
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   665
            {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   666
            PERF_CAT_API_TIME_RESTART
26
hgs
parents: 21
diff changeset
   667
            mSearchHandler->searchAsync(aKeyword, DEFAULT_SEARCH_FIELD);
9
hgs
parents: 7
diff changeset
   668
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   669
            }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   670
        else
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   671
            {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   672
            searchOnCategory(mSearchString);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   673
            }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   674
        }
26
hgs
parents: 21
diff changeset
   675
    else
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   676
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   677
        PERF_TOTAL_UI_ENDLOG
9
hgs
parents: 7
diff changeset
   678
        if (mListView->count() == 0 && aKeyword.length() != 0)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   679
            {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   680
            noResultsFound(mOriginalString);
9
hgs
parents: 7
diff changeset
   681
            createSuggestionLink();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   682
            }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   683
        return;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   684
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   685
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   686
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   687
// SearchProgressiveState::slotstartNewSearch
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   688
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   689
void SearchProgressiveState::slotstartNewSearch(const QString &aKeyword)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   690
    {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   691
    PERF_CAT_TOTAL_TIME_RESTART
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   692
    mOriginalString = aKeyword.trimmed();
16
hgs
parents: 15
diff changeset
   693
26
hgs
parents: 21
diff changeset
   694
    for (int j = 0; j < mUiLoader->ContentInfoList().count(); j++)
16
hgs
parents: 15
diff changeset
   695
        {
26
hgs
parents: 21
diff changeset
   696
        mUiLoader->ContentInfoList().at(j)->setSearchProgress(false);
16
hgs
parents: 15
diff changeset
   697
        }
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   698
    for (int i = 0; i < mSearchHandlerList.count(); i++)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   699
        {
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   700
        mSearchHandlerList.at(i)->cancelLastSearch();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   701
        }
9
hgs
parents: 7
diff changeset
   702
    if (mListView->count() != 0)
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   703
        {
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   704
        clear();
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   705
        }
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   706
    if (mOriginalString.length())
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   707
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   708
        mDatabasecount = 0;
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   709
        mLinkindex = 0;
7
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   710
        mSearchString = "$prefix(\"";
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   711
        mSearchString += mOriginalString;
7
51d10d255e92 Revision: 201021
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 5
diff changeset
   712
        mSearchString += "\")";
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   713
        searchOnCategory(mSearchString);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   714
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   715
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   716
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   717
// SearchProgressiveState::slotsetSettings
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   718
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   719
void SearchProgressiveState::slotsetSettings()
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   720
    {
26
hgs
parents: 21
diff changeset
   721
    for (int j = 0; j < mUiLoader->ContentInfoList().count(); j++)
hgs
parents: 21
diff changeset
   722
        {
hgs
parents: 21
diff changeset
   723
        mSelectedCategory.insert(j,
hgs
parents: 21
diff changeset
   724
                mUiLoader->ContentInfoList().at(j)->getSelected());
hgs
parents: 21
diff changeset
   725
        }
9
hgs
parents: 7
diff changeset
   726
    if (mOriginalString.length())
hgs
parents: 7
diff changeset
   727
        emit inDeviceSearchQuery(mOriginalString);
hgs
parents: 7
diff changeset
   728
    emit switchProToSettingsState();
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   729
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   730
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   731
// SearchProgressiveState::slotsettingsaction
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   732
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
   733
void SearchProgressiveState::slotsettingsaction(bool avalue)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   734
    {
15
hgs
parents: 13
diff changeset
   735
    if (avalue && mStateStatus)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   736
        {
26
hgs
parents: 21
diff changeset
   737
        QMap<int, bool> mTempSelectedCategory;
hgs
parents: 21
diff changeset
   738
        for (int i = 0; i < mUiLoader->ContentInfoList().count(); i++)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   739
            {
26
hgs
parents: 21
diff changeset
   740
            mTempSelectedCategory.insert(i,
hgs
parents: 21
diff changeset
   741
                    mUiLoader->ContentInfoList().at(i)->getSelected());
hgs
parents: 21
diff changeset
   742
            }
hgs
parents: 21
diff changeset
   743
        QMapIterator<int, bool> j(mTempSelectedCategory);
hgs
parents: 21
diff changeset
   744
        QMapIterator<int, bool> k(mSelectedCategory);
hgs
parents: 21
diff changeset
   745
        while (j.hasNext())
hgs
parents: 21
diff changeset
   746
            {
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   747
            j.next();
26
hgs
parents: 21
diff changeset
   748
            k.next();
hgs
parents: 21
diff changeset
   749
            if (j.value() != k.value())
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   750
                {
26
hgs
parents: 21
diff changeset
   751
                slotstartNewSearch(mOriginalString);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   752
                break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   753
                }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   754
            }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   755
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   756
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   757
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   758
// SearchProgressiveState::getAppIconFromAppId
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   759
// ---------------------------------------------------------------------------
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   760
HbIcon SearchProgressiveState::getAppIconFromAppIdL(TUid auid)
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   761
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   762
    HbIcon icon;
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   763
    RApaLsSession apaLsSession;
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   764
    CleanupClosePushL(apaLsSession);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   765
    User::LeaveIfError(apaLsSession.Connect());
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   766
    CApaAppServiceInfoArray* skinArray(NULL);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   767
    TRAPD( err, skinArray = apaLsSession.GetAppServiceOpaqueDataLC(auid, TUid::Uid(0x2002DCF3));
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   768
            if (err == KErrNone && skinArray )
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   769
                {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   770
                TArray<TApaAppServiceInfo> tmpArray( skinArray->Array() );
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   771
                if ( tmpArray.Count() )
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   772
                    {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   773
                    TPtrC8 opaque(tmpArray[0].OpaqueData());
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   774
                    const TPtrC16 iconName((TText16*) opaque.Ptr(),(opaque.Length()+1)>>1);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   775
                    icon = HbIcon( XQConversions:: s60DescToQString( iconName ) );
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   776
                    }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   777
                }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   778
            CleanupStack::PopAndDestroy(skinArray);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   779
    );
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   780
    if (icon.isNull() || !(icon.size().isValid()))
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   781
        {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   782
        TSize iconSize(mListViewIconSize.width(), mListViewIconSize.height());
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   783
        CApaMaskedBitmap* apaMaskedBitmap = CApaMaskedBitmap::NewLC();
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   784
        TInt err = apaLsSession.GetAppIcon(auid, iconSize, *apaMaskedBitmap);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   785
        TInt iconsCount(0);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   786
        apaLsSession.NumberOfOwnDefinedIcons(auid, iconsCount);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   787
        QPixmap pixmap;
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   788
        if ((err == KErrNone) && (iconsCount > 0))
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   789
            {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   790
            fromBitmapAndMaskToPixmapL(apaMaskedBitmap,
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   791
                    apaMaskedBitmap->Mask(), pixmap);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   792
            pixmap = pixmap.scaled(mListViewIconSize,
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   793
                    Qt::KeepAspectRatioByExpanding);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   794
            icon = HbIcon(QIcon(pixmap));
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   795
            }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   796
        else
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   797
            {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   798
            HBufC* fileNameFromApparc;
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   799
            TInt err2 = apaLsSession.GetAppIcon(auid, fileNameFromApparc);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   800
            CleanupStack::PushL(fileNameFromApparc);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   801
            if (err2 == KErrNone)
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   802
                {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   803
                QString fileName = XQConversions::s60DescToQString(
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   804
                        fileNameFromApparc->Des());
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   805
                if (fileName.contains(QString(".mif")))
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   806
                    {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   807
                    TPtr ptr(fileNameFromApparc->Des());
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   808
                    GetPixmapByFilenameL(ptr, mListViewIconSize, pixmap);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   809
                    pixmap = pixmap.scaled(mListViewIconSize,
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   810
                            Qt::KeepAspectRatioByExpanding);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   811
                    icon = HbIcon(QIcon(pixmap));
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   812
                    }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   813
                }
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   814
            CleanupStack::Pop(fileNameFromApparc);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   815
            }
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   816
        CleanupStack::PopAndDestroy(apaMaskedBitmap);
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   817
        }
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   818
    CleanupStack::PopAndDestroy(&apaLsSession);
9
hgs
parents: 7
diff changeset
   819
    if (icon.isNull() || !(icon.size().isValid()))
hgs
parents: 7
diff changeset
   820
        icon = HbIcon("qtg_large_application");
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   821
    return icon;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   822
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   823
// ---------------------------------------------------------------------------
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   824
// SearchProgressiveState::GetPixmapByFilenameL
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   825
// ---------------------------------------------------------------------------
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   826
void SearchProgressiveState::GetPixmapByFilenameL(TDesC& fileName,
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   827
        const QSize &size, QPixmap& pixmap)
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   828
    {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   829
    CFbsBitmap *bitamp(0);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   830
    CFbsBitmap *mask(0);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   831
    if (AknIconUtils::IsMifFile(fileName))
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   832
        {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   833
        // SVG icon
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   834
        // SVG always has only one icon
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   835
        TInt bitmapIndex = 0;
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   836
        TInt maskIndex = 1;
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   837
        AknIconUtils::ValidateLogicalAppIconId(fileName, bitmapIndex,
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   838
                maskIndex);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   839
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   840
        AknIconUtils::CreateIconLC(bitamp, mask, fileName, bitmapIndex,
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   841
                maskIndex);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   842
        }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   843
    AknIconUtils::DisableCompression(bitamp);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   844
    AknIconUtils::SetSize(bitamp, TSize(size.width(), size.height()),
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   845
            EAspectRatioPreservedAndUnusedSpaceRemoved);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   846
    AknIconUtils::DisableCompression(mask);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   847
    AknIconUtils::SetSize(mask, TSize(size.width(), size.height()),
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   848
            EAspectRatioPreservedAndUnusedSpaceRemoved);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   849
    fromBitmapAndMaskToPixmapL(bitamp, mask, pixmap);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   850
    // bitmap and icon, AknsUtils::CreateIconLC doesn't specify the order
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   851
    CleanupStack::Pop(2);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   852
    }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   853
// ---------------------------------------------------------------------------
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   854
// SearchProgressiveState::TDisplayMode2Format
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   855
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   856
QImage::Format SearchProgressiveState::TDisplayMode2Format(TDisplayMode mode)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   857
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   858
    QImage::Format format;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   859
    switch (mode)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   860
        {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   861
        case EGray2:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   862
            format = QImage::Format_MonoLSB;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   863
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   864
        case EColor256:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   865
        case EGray256:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   866
            format = QImage::Format_Indexed8;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   867
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   868
        case EColor4K:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   869
            format = QImage::Format_RGB444;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   870
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   871
        case EColor64K:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   872
            format = QImage::Format_RGB16;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   873
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   874
        case EColor16M:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   875
            format = QImage::Format_RGB888;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   876
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   877
        case EColor16MU:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   878
            format = QImage::Format_RGB32;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   879
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   880
        case EColor16MA:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   881
            format = QImage::Format_ARGB32;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   882
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   883
        case EColor16MAP:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   884
            format = QImage::Format_ARGB32_Premultiplied;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   885
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   886
        default:
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   887
            format = QImage::Format_Invalid;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   888
            break;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   889
        }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   890
    return format;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   891
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   892
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   893
// SearchProgressiveState::fromSymbianCFbsBitmap
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   894
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   895
QPixmap SearchProgressiveState::fromSymbianCFbsBitmap(CFbsBitmap *aBitmap)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   896
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   897
    aBitmap->BeginDataAccess();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   898
    uchar *data = (uchar *) aBitmap->DataAddress();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   899
    TSize size = aBitmap->SizeInPixels();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   900
    TDisplayMode displayMode = aBitmap->DisplayMode();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   901
    QImage image(data, size.iWidth, size.iHeight, TDisplayMode2Format(
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   902
            displayMode));// QImage format must match to bitmap format
0
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   903
    aBitmap->EndDataAccess();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   904
    // No data copying happens because image format matches native OpenVG format.
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   905
    // So QPixmap actually points to CFbsBitmap data.
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   906
    return QPixmap::fromImage(image);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   907
    }
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   908
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   909
// SearchProgressiveState::copyBitmapLC
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   910
// ---------------------------------------------------------------------------
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   911
CFbsBitmap *SearchProgressiveState::copyBitmapLC(CFbsBitmap *input)
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   912
    {
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   913
    CFbsBitmap *bmp = new (ELeave) CFbsBitmap();
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   914
    CleanupStack::PushL(bmp);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   915
    bmp->Create(input->SizeInPixels(), input->DisplayMode());
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   916
    CFbsBitmapDevice *bitmapDevice = CFbsBitmapDevice::NewL(bmp);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   917
    CleanupStack::PushL(bitmapDevice);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   918
    CFbsBitGc *bmpGc;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   919
    bitmapDevice->CreateContext(bmpGc);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   920
    bmpGc->BitBlt(TPoint(0, 0), input);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   921
    delete bmpGc;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   922
    CleanupStack::PopAndDestroy(bitmapDevice);
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   923
    return bmp;
ccd0fd43f247 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   924
    }
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   925
// ---------------------------------------------------------------------------
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   926
// SearchProgressiveState::fromBitmapAndMaskToPixmapL
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   927
// ---------------------------------------------------------------------------
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   928
void SearchProgressiveState::fromBitmapAndMaskToPixmapL(
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   929
        CFbsBitmap* fbsBitmap, CFbsBitmap* fbsMask, QPixmap& pixmap)
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   930
    {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   931
    if (fbsBitmap->Header().iCompression == ENoBitmapCompression)
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   932
        {
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   933
        pixmap = fromSymbianCFbsBitmap(fbsBitmap);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   934
        QPixmap mask = fromSymbianCFbsBitmap(fbsMask);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   935
        pixmap.setAlphaChannel(mask);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   936
        }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   937
    else
26
hgs
parents: 21
diff changeset
   938
        {
5
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   939
        CFbsBitmap *temp(NULL);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   940
        temp = copyBitmapLC(fbsBitmap);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   941
        pixmap = fromSymbianCFbsBitmap(temp);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   942
        CleanupStack::PopAndDestroy();
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   943
        temp = copyBitmapLC(fbsMask);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   944
        QPixmap mask = fromSymbianCFbsBitmap(temp);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   945
        CleanupStack::PopAndDestroy();
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   946
        pixmap.setAlphaChannel(mask);
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   947
        }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   948
    }
3bc31ad99ee7 Revision: 201019
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 3
diff changeset
   949
// ---------------------------------------------------------------------------
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   950
// SearchProgressiveState::filterDoc
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   951
// ---------------------------------------------------------------------------
15
hgs
parents: 13
diff changeset
   952
QString SearchProgressiveState::filterDoc(const CpixDocument* aDoc,
2
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   953
        const QString& filter)
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   954
    {
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   955
    for (int i = 0; i < aDoc->fieldCount(); i++)
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   956
        {
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   957
        if (aDoc->field(i).name().contains(filter))
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   958
            {
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   959
            return aDoc->field(i).value();
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   960
            }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   961
        }
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   962
    return NULL;
208a4ba3894c Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 0
diff changeset
   963
    }
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   964
// ---------------------------------------------------------------------------
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   965
// SearchProgressiveState::filterDoc
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   966
// ---------------------------------------------------------------------------
15
hgs
parents: 13
diff changeset
   967
QStringList SearchProgressiveState::filterDoc(const CpixDocument* aDoc,
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   968
        const QString& filter1, const QString& filter2,
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   969
        const QString& filter3)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   970
    {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   971
    QStringList docList;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   972
    docList.append(QString());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   973
    docList.append(QString());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   974
    docList.append(QString());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   975
    bool bfilter1 = false;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   976
    bool bfilter2 = false;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   977
    bool bfilter3 = false;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   978
    if (!filter3.length())
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   979
        {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   980
        bfilter3 = true;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   981
        }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   982
    for (int i = 0; i < aDoc->fieldCount(); i++)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   983
        {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   984
        if (!bfilter1 && aDoc->field(i).name().contains(filter1))
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   985
            {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   986
            docList.replace(0, aDoc->field(i).value());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   987
            bfilter1 = true;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   988
            }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   989
        if (!bfilter2 && aDoc->field(i).name().contains(filter2))
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   990
            {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   991
            docList.replace(1, aDoc->field(i).value());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   992
            bfilter2 = true;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   993
            }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   994
        if (!bfilter3 && aDoc->field(i).name().contains(filter3))
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   995
            {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   996
            docList.replace(2, aDoc->field(i).value());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   997
            bfilter3 = true;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   998
            }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
   999
        if (bfilter1 && bfilter2 && bfilter3)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1000
            break;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1001
        }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1002
    return docList;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1003
    }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1004
// ---------------------------------------------------------------------------
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1005
// SearchProgressiveState::getDrivefromMediaId
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1006
// ---------------------------------------------------------------------------
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1007
QString SearchProgressiveState::getDrivefromMediaId(QString aMediaId)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1008
    {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1009
    TBuf<15> mediaIdBuf(aMediaId.utf16());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1010
    if (KErrNone == iFs.Connect())
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1011
        {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1012
        TUint mediaNum;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1013
        TVolumeInfo vmInfo;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1014
        TChar driveLetter;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1015
        TLex lex(mediaIdBuf);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1016
        lex.Val(mediaNum);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1017
        TDriveNumber drive = TDriveNumber(KErrNotSupported);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1018
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1019
        for (TInt i = 0; i <= EDriveZ; i++)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1020
            {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1021
            TInt err = iFs.Volume(vmInfo, i);// Volume() returns KErrNotReady if no volume present.       
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1022
            if (err != KErrNotReady)// In this case, check next drive number
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1023
                {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1024
                if (vmInfo.iUniqueID == mediaNum)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1025
                    {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1026
                    drive = TDriveNumber(i);//Is the drive
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1027
                    if (KErrNone == iFs.DriveToChar(drive, driveLetter))
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1028
                        {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1029
                        mediaIdBuf.Zero();
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1030
                        mediaIdBuf.Append(driveLetter);
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1031
                        mediaIdBuf.LowerCase();
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1032
                        }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1033
                    break;
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1034
                    }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1035
                }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1036
            }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1037
        iFs.Close();
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1038
        }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1039
    return QString::fromUtf16(mediaIdBuf.Ptr(), mediaIdBuf.Length());
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1040
    }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1041
// ---------------------------------------------------------------------------
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1042
// SearchProgressiveState::LaunchApplicationL
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1043
// ---------------------------------------------------------------------------
18
hgs
parents: 16
diff changeset
  1044
void SearchProgressiveState::LaunchApplicationL(const QString aUid)
21
hgs
parents: 18
diff changeset
  1045
    {  
hgs
parents: 18
diff changeset
  1046
    if(aUid.contains(SEARCHAPPUID,Qt::CaseInsensitive))
hgs
parents: 18
diff changeset
  1047
        {       
hgs
parents: 18
diff changeset
  1048
        return;
hgs
parents: 18
diff changeset
  1049
        }
18
hgs
parents: 16
diff changeset
  1050
    QServiceManager serviceManager;
hgs
parents: 16
diff changeset
  1051
    QObject* mActivityManager = serviceManager.loadInterface(
hgs
parents: 16
diff changeset
  1052
            "com.nokia.qt.activities.ActivityManager");
hgs
parents: 16
diff changeset
  1053
    if (!mActivityManager)
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1054
        {
18
hgs
parents: 16
diff changeset
  1055
        return;
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1056
        }
18
hgs
parents: 16
diff changeset
  1057
    QUrl url;
hgs
parents: 16
diff changeset
  1058
    url.setScheme(XQURI_SCHEME_ACTIVITY);
hgs
parents: 16
diff changeset
  1059
    QString str("0x");
hgs
parents: 16
diff changeset
  1060
    str.append(aUid);
hgs
parents: 16
diff changeset
  1061
    url.setHost(str);
hgs
parents: 16
diff changeset
  1062
    QMetaObject::invokeMethod(mActivityManager, "launchActivity",
hgs
parents: 16
diff changeset
  1063
            Q_ARG(QUrl, url));
hgs
parents: 16
diff changeset
  1064
    delete mActivityManager;
hgs
parents: 16
diff changeset
  1065
    PERF_RESULT_ITEM_LAUNCH_TIME_ENDLOG("")
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1066
    }
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1067
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1068
// SearchProgressiveState::slotviewingCompleted
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1069
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1070
void SearchProgressiveState::slotviewingCompleted()
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1071
    {
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1072
    if (calAgandaViewerPluginInstance)
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1073
        calAgandaViewerPluginInstance->deleteLater();
16
hgs
parents: 15
diff changeset
  1074
    PERF_RESULT_ITEM_LAUNCH_TIME_ENDLOG ("")
3
6832643895f7 Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 2
diff changeset
  1075
    }
9
hgs
parents: 7
diff changeset
  1076
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1077
// SearchProgressiveState::slotviewReady
9
hgs
parents: 7
diff changeset
  1078
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1079
void SearchProgressiveState::slotviewReady()
9
hgs
parents: 7
diff changeset
  1080
    {
27
hgs
parents: 26
diff changeset
  1081
   
hgs
parents: 26
diff changeset
  1082
        if (activation->reason() == Af::ActivationReasonActivity)
9
hgs
parents: 7
diff changeset
  1083
            {
27
hgs
parents: 26
diff changeset
  1084
            QVariantHash params = activation->parameters();
26
hgs
parents: 21
diff changeset
  1085
            QString searchKey = params.value(SEARCHAIWQUERY).toString();
hgs
parents: 21
diff changeset
  1086
            params.remove(SEARCHAIWQUERY);
hgs
parents: 21
diff changeset
  1087
            params.remove(XQURI_KEY_ACTIVITY_NAME);
15
hgs
parents: 13
diff changeset
  1088
            QList<QVariant> list = params.values();
26
hgs
parents: 21
diff changeset
  1089
            for (int i = 0; i < mUiLoader->ContentInfoList().count(); i++)
hgs
parents: 21
diff changeset
  1090
                {
hgs
parents: 21
diff changeset
  1091
                mUiLoader->ContentInfoList().at(i)->setSelected(false);
hgs
parents: 21
diff changeset
  1092
                }
15
hgs
parents: 13
diff changeset
  1093
            for (int i = 0; i < list.count(); i++)
hgs
parents: 13
diff changeset
  1094
                {
hgs
parents: 13
diff changeset
  1095
                QString str = list.at(i).toString();
hgs
parents: 13
diff changeset
  1096
                if (!str.isNull())
26
hgs
parents: 21
diff changeset
  1097
                    {
hgs
parents: 21
diff changeset
  1098
                    for (int j = 0; j < mUiLoader->ContentInfoList().count(); j++)
hgs
parents: 21
diff changeset
  1099
                        {
hgs
parents: 21
diff changeset
  1100
                        if (mUiLoader->ContentInfoList().at(i)->getBaseApp().contains(
hgs
parents: 21
diff changeset
  1101
                                str))
hgs
parents: 21
diff changeset
  1102
                            mUiLoader->ContentInfoList().at(i)->setSelected(
hgs
parents: 21
diff changeset
  1103
                                    true);
hgs
parents: 21
diff changeset
  1104
                        }
hgs
parents: 21
diff changeset
  1105
                    }
15
hgs
parents: 13
diff changeset
  1106
                }
9
hgs
parents: 7
diff changeset
  1107
            if (searchKey.length() > 0)
hgs
parents: 7
diff changeset
  1108
                mSearchPanel->setCriteria(searchKey);
hgs
parents: 7
diff changeset
  1109
            }
27
hgs
parents: 26
diff changeset
  1110
       
16
hgs
parents: 15
diff changeset
  1111
    PERF_APP_LAUNCH_END("SearchAppplication View is ready");
15
hgs
parents: 13
diff changeset
  1112
    emit applicationReady();
9
hgs
parents: 7
diff changeset
  1113
    }
15
hgs
parents: 13
diff changeset
  1114
// ---------------------------------------------------------------------------
hgs
parents: 13
diff changeset
  1115
// SearchProgressiveState::slotOnlineQuery
hgs
parents: 13
diff changeset
  1116
// ---------------------------------------------------------------------------
9
hgs
parents: 7
diff changeset
  1117
void SearchProgressiveState::slotOnlineQuery(QString str)
hgs
parents: 7
diff changeset
  1118
    {
15
hgs
parents: 13
diff changeset
  1119
    if (mOriginalString != str)
hgs
parents: 13
diff changeset
  1120
        {
hgs
parents: 13
diff changeset
  1121
        mOriginalString = str;
hgs
parents: 13
diff changeset
  1122
        mOnlineQueryAvailable = true;
hgs
parents: 13
diff changeset
  1123
        }
9
hgs
parents: 7
diff changeset
  1124
    }
15
hgs
parents: 13
diff changeset
  1125
// ---------------------------------------------------------------------------
hgs
parents: 13
diff changeset
  1126
// SearchProgressiveState::slotISProvidersIcon
hgs
parents: 13
diff changeset
  1127
// ---------------------------------------------------------------------------
9
hgs
parents: 7
diff changeset
  1128
void SearchProgressiveState::slotISProvidersIcon(int id, HbIcon icon)
hgs
parents: 7
diff changeset
  1129
    {
hgs
parents: 7
diff changeset
  1130
    mISprovidersIcon.insert(id, icon);
hgs
parents: 7
diff changeset
  1131
    }
15
hgs
parents: 13
diff changeset
  1132
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1133
// SearchProgressiveState::slotactivityRequested
15
hgs
parents: 13
diff changeset
  1134
// ---------------------------------------------------------------------------
27
hgs
parents: 26
diff changeset
  1135
void SearchProgressiveState::slotactivityRequested(Af::ActivationReason reason, const QString &name, QVariantHash parameter )
15
hgs
parents: 13
diff changeset
  1136
    {
27
hgs
parents: 26
diff changeset
  1137
    if ((reason == Af::ActivationReasonActivity)&&(name == SEARCHAIWDECLINDEVICE))
15
hgs
parents: 13
diff changeset
  1138
        {
27
hgs
parents: 26
diff changeset
  1139
        QVariantHash params =parameter;
26
hgs
parents: 21
diff changeset
  1140
        QString searchKey = params.value(SEARCHAIWQUERY).toString();
15
hgs
parents: 13
diff changeset
  1141
        int i = params.count();
26
hgs
parents: 21
diff changeset
  1142
        params.remove(SEARCHAIWQUERY);
hgs
parents: 21
diff changeset
  1143
        params.remove(XQURI_KEY_ACTIVITY_NAME);
15
hgs
parents: 13
diff changeset
  1144
        QList<QVariant> list = params.values();
26
hgs
parents: 21
diff changeset
  1145
        for (int i = 0; i < mUiLoader->ContentInfoList().count(); i++)
hgs
parents: 21
diff changeset
  1146
            {
hgs
parents: 21
diff changeset
  1147
            mUiLoader->ContentInfoList().at(i)->setSelected(false);
hgs
parents: 21
diff changeset
  1148
            }
15
hgs
parents: 13
diff changeset
  1149
        for (int i = 0; i < list.count(); i++)
hgs
parents: 13
diff changeset
  1150
            {
hgs
parents: 13
diff changeset
  1151
            QString str = list.at(i).toString();
hgs
parents: 13
diff changeset
  1152
            if (!str.isNull())
26
hgs
parents: 21
diff changeset
  1153
                {
hgs
parents: 21
diff changeset
  1154
                for (int j = 0; j < mUiLoader->ContentInfoList().count(); j++)
hgs
parents: 21
diff changeset
  1155
                    {
hgs
parents: 21
diff changeset
  1156
                    if (mUiLoader->ContentInfoList().at(i)->getBaseApp().contains(
hgs
parents: 21
diff changeset
  1157
                            str))
hgs
parents: 21
diff changeset
  1158
                        mUiLoader->ContentInfoList().at(i)->setSelected(true);
hgs
parents: 21
diff changeset
  1159
                    }
hgs
parents: 21
diff changeset
  1160
                }
15
hgs
parents: 13
diff changeset
  1161
            }
hgs
parents: 13
diff changeset
  1162
        if (searchKey.length() > 0)
hgs
parents: 13
diff changeset
  1163
            mSearchPanel->setCriteria(searchKey);
hgs
parents: 13
diff changeset
  1164
        }
hgs
parents: 13
diff changeset
  1165
    }
16
hgs
parents: 15
diff changeset
  1166
// ---------------------------------------------------------------------------
hgs
parents: 15
diff changeset
  1167
// SearchProgressiveState::parseDocument
hgs
parents: 15
diff changeset
  1168
// ---------------------------------------------------------------------------
hgs
parents: 15
diff changeset
  1169
void SearchProgressiveState::parseDocument(CpixDocument* aDoc)
hgs
parents: 15
diff changeset
  1170
    {
hgs
parents: 15
diff changeset
  1171
    PERF_CAT_GETDOC_TIME_ACCUMULATE
hgs
parents: 15
diff changeset
  1172
    if (aDoc == NULL)
hgs
parents: 15
diff changeset
  1173
        return;
hgs
parents: 15
diff changeset
  1174
    QString secondrow = aDoc->excerpt();
hgs
parents: 15
diff changeset
  1175
    QString firstrow;
hgs
parents: 15
diff changeset
  1176
    HbListWidgetItem* listitem = new HbListWidgetItem();
18
hgs
parents: 16
diff changeset
  1177
    bool addtoList = true;
16
hgs
parents: 15
diff changeset
  1178
26
hgs
parents: 21
diff changeset
  1179
    if (aDoc->baseAppClass().contains(FILEFOLDERCATEGORY))
16
hgs
parents: 15
diff changeset
  1180
        {
hgs
parents: 15
diff changeset
  1181
        bool ok;
26
hgs
parents: 21
diff changeset
  1182
        QStringList fileList = filterDoc(aDoc, NAMEFIELD, ISFOLDERFIELD,
hgs
parents: 21
diff changeset
  1183
                EXTENSIONFIELD);
16
hgs
parents: 15
diff changeset
  1184
        firstrow = fileList.at(0);
18
hgs
parents: 16
diff changeset
  1185
        if (fileList.at(1).toInt(&ok) == 1) // not to show folder results 
16
hgs
parents: 15
diff changeset
  1186
            {
18
hgs
parents: 16
diff changeset
  1187
            addtoList = false;
16
hgs
parents: 15
diff changeset
  1188
            }
hgs
parents: 15
diff changeset
  1189
        else
hgs
parents: 15
diff changeset
  1190
            {
hgs
parents: 15
diff changeset
  1191
            if (fileList.at(2).contains("sis", Qt::CaseInsensitive)
hgs
parents: 15
diff changeset
  1192
                    || fileList.at(1).contains("sisx", Qt::CaseInsensitive))
hgs
parents: 15
diff changeset
  1193
                {
26
hgs
parents: 21
diff changeset
  1194
                listitem->setData(HbIcon("qtg_large_sisx"), Qt::DecorationRole);
16
hgs
parents: 15
diff changeset
  1195
                }
hgs
parents: 15
diff changeset
  1196
            else if (fileList.at(2).contains("java", Qt::CaseInsensitive)
hgs
parents: 15
diff changeset
  1197
                    || fileList.at(2).contains("jar", Qt::CaseInsensitive)
hgs
parents: 15
diff changeset
  1198
                    || fileList.at(2).contains("jad", Qt::CaseInsensitive))
hgs
parents: 15
diff changeset
  1199
                {
26
hgs
parents: 21
diff changeset
  1200
                listitem->setData(HbIcon("qtg_large_java"), Qt::DecorationRole);
16
hgs
parents: 15
diff changeset
  1201
                }
hgs
parents: 15
diff changeset
  1202
            else if (fileList.at(2).contains("swf", Qt::CaseInsensitive))
hgs
parents: 15
diff changeset
  1203
                {
26
hgs
parents: 21
diff changeset
  1204
                listitem->setData(HbIcon("qtg_large_flash"), Qt::DecorationRole);
16
hgs
parents: 15
diff changeset
  1205
                }
hgs
parents: 15
diff changeset
  1206
            else
hgs
parents: 15
diff changeset
  1207
                {
26
hgs
parents: 21
diff changeset
  1208
                listitem->setData(HbIcon("qtg_large_query"), Qt::DecorationRole);
16
hgs
parents: 15
diff changeset
  1209
                }
hgs
parents: 15
diff changeset
  1210
            }
hgs
parents: 15
diff changeset
  1211
        }
26
hgs
parents: 21
diff changeset
  1212
    else if (aDoc->baseAppClass().contains(FILECATEGORY))
16
hgs
parents: 15
diff changeset
  1213
        {
26
hgs
parents: 21
diff changeset
  1214
        QStringList fileList = filterDoc(aDoc, NAMEFIELD, EXTENSIONFIELD);
16
hgs
parents: 15
diff changeset
  1215
        firstrow = fileList.at(0);
hgs
parents: 15
diff changeset
  1216
        if (firstrow.length() == 0)
hgs
parents: 15
diff changeset
  1217
            firstrow = aDoc->baseAppClass();
hgs
parents: 15
diff changeset
  1218
        if (fileList.at(1).contains("txt", Qt::CaseInsensitive))
hgs
parents: 15
diff changeset
  1219
            {
26
hgs
parents: 21
diff changeset
  1220
            listitem->setData(HbIcon("qtg_large_text"), Qt::DecorationRole);
16
hgs
parents: 15
diff changeset
  1221
            }
hgs
parents: 15
diff changeset
  1222
        else
hgs
parents: 15
diff changeset
  1223
            {
26
hgs
parents: 21
diff changeset
  1224
            listitem->setData(HbIcon("qtg_large_query"), Qt::DecorationRole);
hgs
parents: 21
diff changeset
  1225
            }
hgs
parents: 21
diff changeset
  1226
        }
hgs
parents: 21
diff changeset
  1227
    else
hgs
parents: 21
diff changeset
  1228
        {
hgs
parents: 21
diff changeset
  1229
        if (aDoc->baseAppClass().contains(MEDIACATEGORY))
hgs
parents: 21
diff changeset
  1230
            {
hgs
parents: 21
diff changeset
  1231
            QStringList medialist = filterDoc(aDoc, FIRSTLINEFIELD, MEDIAIDFIELD);
hgs
parents: 21
diff changeset
  1232
            firstrow = medialist.at(0);
hgs
parents: 21
diff changeset
  1233
            listitem->setData(medialist.at(1), Qt::UserRole + 2);
hgs
parents: 21
diff changeset
  1234
            }
hgs
parents: 21
diff changeset
  1235
        else if (aDoc->baseAppClass().contains(EMAILCATEGORY))
hgs
parents: 21
diff changeset
  1236
            {
hgs
parents: 21
diff changeset
  1237
            QStringList emaillist = filterDoc(aDoc, FIRSTLINEFIELD,
hgs
parents: 21
diff changeset
  1238
                    MAILBOXFIELD, FOLDERFIELD);
hgs
parents: 21
diff changeset
  1239
            firstrow = emaillist.at(0);
hgs
parents: 21
diff changeset
  1240
            listitem->setData(emaillist.at(1), Qt::UserRole + 2);
hgs
parents: 21
diff changeset
  1241
            listitem->setData(emaillist.at(2), Qt::UserRole + 3);
hgs
parents: 21
diff changeset
  1242
            }
hgs
parents: 21
diff changeset
  1243
        else
hgs
parents: 21
diff changeset
  1244
            {
hgs
parents: 21
diff changeset
  1245
            firstrow = filterDoc(aDoc, FIRSTLINEFIELD);
hgs
parents: 21
diff changeset
  1246
            }                
hgs
parents: 21
diff changeset
  1247
        for (int i = 0; i < mUiLoader->ContentInfoList().count(); i++)
hgs
parents: 21
diff changeset
  1248
            {
27
hgs
parents: 26
diff changeset
  1249
            if (!(aDoc->baseAppClass().compare (mUiLoader->ContentInfoList().at(i)->getBaseApp())))
26
hgs
parents: 21
diff changeset
  1250
                {
hgs
parents: 21
diff changeset
  1251
                if (!firstrow.length())
hgs
parents: 21
diff changeset
  1252
                    {
hgs
parents: 21
diff changeset
  1253
                    firstrow = QString(hbTrId(mUiLoader->ContentInfoList().at(i)->getExceptionString().toAscii()));
hgs
parents: 21
diff changeset
  1254
                    }                
hgs
parents: 21
diff changeset
  1255
                if(mUiLoader->ContentInfoList().at(i)->getDisplayIcon().length())
hgs
parents: 21
diff changeset
  1256
                    {
hgs
parents: 21
diff changeset
  1257
                    listitem->setData(HbIcon(mUiLoader->ContentInfoList().at(i)->getDisplayIcon()), Qt::DecorationRole);
hgs
parents: 21
diff changeset
  1258
                    }
hgs
parents: 21
diff changeset
  1259
                else
hgs
parents: 21
diff changeset
  1260
                    {
hgs
parents: 21
diff changeset
  1261
                    bool ok;
hgs
parents: 21
diff changeset
  1262
                    TRAP_IGNORE(listitem->setData(getAppIconFromAppIdL(TUid::Uid(aDoc->docId().toUInt(&ok, 16))), Qt::DecorationRole));
hgs
parents: 21
diff changeset
  1263
                    }
hgs
parents: 21
diff changeset
  1264
                }
16
hgs
parents: 15
diff changeset
  1265
            }
hgs
parents: 15
diff changeset
  1266
        }
hgs
parents: 15
diff changeset
  1267
    listitem->setText(firstrow);
hgs
parents: 15
diff changeset
  1268
    listitem->setSecondaryText(secondrow);
hgs
parents: 15
diff changeset
  1269
    listitem->setData(aDoc->docId(), Qt::UserRole);
hgs
parents: 15
diff changeset
  1270
    listitem->setData(aDoc->baseAppClass(), Qt::UserRole + 1);
18
hgs
parents: 16
diff changeset
  1271
    if (addtoList)
hgs
parents: 16
diff changeset
  1272
        mListView->addItem(listitem);
hgs
parents: 16
diff changeset
  1273
    else
hgs
parents: 16
diff changeset
  1274
        delete listitem;
16
hgs
parents: 15
diff changeset
  1275
hgs
parents: 15
diff changeset
  1276
    delete aDoc;
hgs
parents: 15
diff changeset
  1277
    }
18
hgs
parents: 16
diff changeset
  1278
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1279
// SearchProgressiveState::slotdbChanged
18
hgs
parents: 16
diff changeset
  1280
// ---------------------------------------------------------------------------
26
hgs
parents: 21
diff changeset
  1281
void SearchProgressiveState::slotdbChanged()
16
hgs
parents: 15
diff changeset
  1282
    {
26
hgs
parents: 21
diff changeset
  1283
    constructHandlers();
16
hgs
parents: 15
diff changeset
  1284
    }
26
hgs
parents: 21
diff changeset
  1285
// ---------------------------------------------------------------------------
hgs
parents: 21
diff changeset
  1286
// SearchProgressiveState::loadTranslator
hgs
parents: 21
diff changeset
  1287
// ---------------------------------------------------------------------------
hgs
parents: 21
diff changeset
  1288
void SearchProgressiveState::loadTranslator(QString localizationpath)
hgs
parents: 21
diff changeset
  1289
    {    
hgs
parents: 21
diff changeset
  1290
    QTranslator* translator = new QTranslator();
hgs
parents: 21
diff changeset
  1291
    QString lang = QLocale::system().name();
hgs
parents: 21
diff changeset
  1292
    
hgs
parents: 21
diff changeset
  1293
    int pos = localizationpath.lastIndexOf("/");
hgs
parents: 21
diff changeset
  1294
    
hgs
parents: 21
diff changeset
  1295
    QString path = localizationpath.left(pos);
27
hgs
parents: 26
diff changeset
  1296
    QString filename = localizationpath.right((localizationpath.length() - 1) - pos);
26
hgs
parents: 21
diff changeset
  1297
27
hgs
parents: 26
diff changeset
  1298
    if(translator->load(filename + lang, path))
hgs
parents: 26
diff changeset
  1299
           QCoreApplication::installTranslator(translator);
hgs
parents: 26
diff changeset
  1300
    else
hgs
parents: 26
diff changeset
  1301
        delete translator;
26
hgs
parents: 21
diff changeset
  1302
    }