ui/viewmanagement/viewmanager/src/glxviewmanager.cpp
author hgs
Wed, 06 Oct 2010 14:49:39 +0530
changeset 71 27f2d7aec52a
parent 62 36d93b4dc635
child 72 0a8e959402e5
permissions -rw-r--r--
201039_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
74c9f037fd5d Revision: 201007
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".
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
*
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
*
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
* Contributors:
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
*
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
* Description:   ?Description
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
*
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
*/
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
#include <glxviewmanager.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
#include <glxview.h>
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    22
#include "glxicondefs.h" //Contains the icon names/Ids
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
#include <glxviewsfactory.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
#include <glxeffectengine.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
#include <hbmainwindow.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    26
#include <glxexternalutility.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
#include <glxloggerenabler.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    28
#include <glxmenumanager.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    29
#include <glxcommandhandlers.hrh>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    30
#include <glxplugincommandid.hrh>
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
    31
#include "glxlocalisationstrings.h"
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
#include <hbaction.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
#include <hbtoolbar.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
#include <hbmenu.h>
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
#include <QDebug>
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    37
#include <hbstyleloader.h>
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    38
#include <hbprogressdialog.h>
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    39
#include <QItemSelectionModel>
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    40
#include <glxmainwindoweventfilter.h>
45
hgs
parents: 44
diff changeset
    41
#include <xqsettingsmanager.h>
hgs
parents: 44
diff changeset
    42
#include <xqsettingskey.h>
54
hgs
parents: 52
diff changeset
    43
#include <glxviewids.h>
hgs
parents: 52
diff changeset
    44
#include "glxmodelroles.h"
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    45
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    46
GlxViewManager::GlxViewManager() 
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    47
    : mBackAction( NULL ), 
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    48
      mMenuManager( NULL ), 
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    49
      mEffectEngine( NULL ), 
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    50
      mViewToolBar( NULL ), 
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    51
      mMarkingToolBar( NULL ), 
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    52
      mSelectionModel ( NULL ),
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    53
      mProgressDialog( NULL )
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    54
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    55
    qDebug("GlxViewManager::GlxViewManager() ");
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    56
54
hgs
parents: 52
diff changeset
    57
    //check the case when application launch through some other application (view plugin)
hgs
parents: 52
diff changeset
    58
    mMainWindow = GlxExternalUtility::instance()->getMainWindow();
hgs
parents: 52
diff changeset
    59
    if(mMainWindow == NULL)	{
hgs
parents: 52
diff changeset
    60
        mMainWindow = new HbMainWindow();
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    61
    }
54
hgs
parents: 52
diff changeset
    62
    connect(mMainWindow, SIGNAL( viewReady() ), this, SLOT( handleReadyView() ));
hgs
parents: 52
diff changeset
    63
    //Without this Zoom Does not work
hgs
parents: 52
diff changeset
    64
hgs
parents: 52
diff changeset
    65
    mWindowEventFilter = new GlxMainWindowEventFilter;
hgs
parents: 52
diff changeset
    66
    mMainWindow->scene()->installEventFilter(mWindowEventFilter);
hgs
parents: 52
diff changeset
    67
    mMainWindow->viewport()->setAttribute(Qt::WA_AcceptTouchEvents);
hgs
parents: 52
diff changeset
    68
    mMainWindow->viewport()->grabGesture(Qt::PinchGesture);
hgs
parents: 52
diff changeset
    69
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
    70
    HbStyleLoader::registerFilePath(":/data/photos.css");
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    71
}
54
hgs
parents: 52
diff changeset
    72
45
hgs
parents: 44
diff changeset
    73
void GlxViewManager::handleReadyView()
hgs
parents: 44
diff changeset
    74
{
hgs
parents: 44
diff changeset
    75
    emit actionTriggered( EGlxCmdSetupItem );
58
hgs
parents: 54
diff changeset
    76
    disconnect( mMainWindow, SIGNAL( viewReady() ), this, SLOT( handleReadyView() ) );
45
hgs
parents: 44
diff changeset
    77
}
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
    79
void GlxViewManager::setupItems( )
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    80
{
44
hgs
parents: 43
diff changeset
    81
    addBackSoftKeyAction();    
54
hgs
parents: 52
diff changeset
    82
    addConnection();
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    83
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    84
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    85
void GlxViewManager::launchApplication(qint32 id, QAbstractItemModel *model)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    86
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
    mModel = model;
54
hgs
parents: 52
diff changeset
    88
    mMenuManager = new GlxMenuManager( mMainWindow );  //menu manager should be created before view.
hgs
parents: 52
diff changeset
    89
    mMenuManager->setModel( mModel );
hgs
parents: 52
diff changeset
    90
    mView = resolveView( id );
hgs
parents: 52
diff changeset
    91
43
hgs
parents: 42
diff changeset
    92
    createToolBar();
hgs
parents: 42
diff changeset
    93
    
hgs
parents: 42
diff changeset
    94
    /* We are showing the toolBar before activating the 
hgs
parents: 42
diff changeset
    95
     * view. This is done to avoid the animation effect seen otherwise 
hgs
parents: 42
diff changeset
    96
     * when the tool bar comes up.
hgs
parents: 42
diff changeset
    97
     * 
hgs
parents: 42
diff changeset
    98
     * If animation Effect is not removed, it leads to flickering effect 
hgs
parents: 42
diff changeset
    99
     * since we are creating a new tool bar..although a fake tool bar was 
hgs
parents: 42
diff changeset
   100
     * already created on the splashscreen
hgs
parents: 42
diff changeset
   101
     * 
hgs
parents: 42
diff changeset
   102
     */
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   103
    mView->activate();
54
hgs
parents: 52
diff changeset
   104
    mView->setModel( mModel );
hgs
parents: 52
diff changeset
   105
    //visibility of tool bar dependes of view internal state so add the toolbar after setting model
hgs
parents: 52
diff changeset
   106
    mView->addToolBar( mViewToolBar ); 
hgs
parents: 52
diff changeset
   107
    mMainWindow->setCurrentView( mView, false );
hgs
parents: 52
diff changeset
   108
    mMainWindow->showFullScreen();
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   109
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   110
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   111
void GlxViewManager::handleMenuAction(qint32 commandId)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   112
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   113
    emit actionTriggered(commandId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   114
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   115
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   116
void GlxViewManager::handleAction()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   117
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   118
    HbAction *action = qobject_cast<HbAction*>(sender());
54
hgs
parents: 52
diff changeset
   119
    action->setChecked( TRUE );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   120
    qint32 commandId = action->data().toInt();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   121
    emit actionTriggered(commandId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   122
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   123
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   124
void GlxViewManager::addBackSoftKeyAction ( )
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   125
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   126
    qDebug("GlxViewManager::addBackSoftKeyAction ");
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   127
    //create the back soft key action and set the data
50
hgs
parents: 45
diff changeset
   128
    mBackAction = new HbAction( Hb::BackNaviAction, this );
hgs
parents: 45
diff changeset
   129
    mBackAction->setData( EGlxCmdBack );
45
hgs
parents: 44
diff changeset
   130
    mBackAction->setObjectName( "App Back" );
hgs
parents: 44
diff changeset
   131
    mView->setNavigationAction( mBackAction );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   132
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   133
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   134
Qt::Orientation GlxViewManager::orientation() const
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   135
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   136
    return mMainWindow->orientation();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   137
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   138
54
hgs
parents: 52
diff changeset
   139
void GlxViewManager::launchView( qint32 id, QAbstractItemModel *model )
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   140
{
54
hgs
parents: 52
diff changeset
   141
    qDebug( "GlxViewManager::launchView Id = %d ", id );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   142
    mModel = model;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   143
    deActivateView();
54
hgs
parents: 52
diff changeset
   144
    mMenuManager->setModel( mModel ); //set the model to get the item type info and row count info
hgs
parents: 52
diff changeset
   145
    mView = resolveView( id );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   146
    activateView();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   147
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   148
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   149
void GlxViewManager::launchView (qint32 id, QAbstractItemModel *model, GlxEffect effect, GlxViewEffect viewEffect)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   150
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   151
    qDebug("GlxViewManager::launchView Id = %d effect %d view effect %d", id, effect, viewEffect);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   152
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   153
    //In the case of no animation is play during the view transition just call launch view and return
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   154
    if ( viewEffect == NO_VIEW ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   155
        return launchView(id, model);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   156
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   157
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   158
    //create and registered the effect
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   159
    if ( mEffectEngine == NULL ) { 
43
hgs
parents: 42
diff changeset
   160
        mEffectEngine = new GlxEffectEngine();
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   161
        mEffectEngine->registerTransitionEffect();
44
hgs
parents: 43
diff changeset
   162
        connect( mEffectEngine, SIGNAL( effectFinished() ), this, SLOT( effectFinished() ), Qt::QueuedConnection );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   163
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   164
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   165
    QList< QGraphicsItem * > itemList;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   166
    QGraphicsItem *item = NULL;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   167
    itemList.clear();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   168
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   169
    //partially clean the view so that animation run smoothly
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   170
    GlxView *curr_view = (GlxView *) mMainWindow->currentView();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   171
    curr_view->resetView();
54
hgs
parents: 52
diff changeset
   172
hgs
parents: 52
diff changeset
   173
    mMenuManager->setModel( model ); //set the model to get the item type info and row count info
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   174
    mView = resolveView(id);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   175
    //partially initialise the view so that animation run smoothly
50
hgs
parents: 45
diff changeset
   176
    mView->initializeView( model, curr_view );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   177
    mModel = model; 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   178
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   179
    if ( viewEffect == CURRENT_VIEW || viewEffect == BOTH_VIEW ) { 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   180
        item = curr_view->getAnimationItem(effect);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   181
        if ( item ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   182
            itemList.append(item);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   183
            item = NULL;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   184
        }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   185
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   186
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   187
    if ( viewEffect == LAUNCH_VIEW || viewEffect == BOTH_VIEW ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   188
        item = mView->getAnimationItem(effect);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   189
        if ( item ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   190
            //increase the z value and show the view to shown the view animation
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   191
            mView->setZValue(curr_view->zValue() + 2);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   192
            mView->show();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   193
            item->show();        
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   194
            itemList.append(item);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   195
        }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   196
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   197
    
54
hgs
parents: 52
diff changeset
   198
    if ( effect == GRID_TO_FULLSCREEN ) {
hgs
parents: 52
diff changeset
   199
        mViewToolBar->setZValue( item->zValue() - 5 );
hgs
parents: 52
diff changeset
   200
    }
hgs
parents: 52
diff changeset
   201
    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   202
    //error check
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   203
    if ( itemList.count() > 0 ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   204
        mEffectEngine->runEffect(itemList, effect);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   205
        mMainWindow->grabMouse();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   206
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   207
    else {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   208
        deActivateView();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   209
        activateView();       
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   210
    }    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   211
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   212
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   213
void GlxViewManager::launchProgressDialog( int maxValue )
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   214
{
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   215
    if ( maxValue <= 0 ) {
45
hgs
parents: 44
diff changeset
   216
        // TNM return the some error code ( negative value ) until it populated the count
hgs
parents: 44
diff changeset
   217
		// To show progress dialog 10 is chossen
hgs
parents: 44
diff changeset
   218
	     maxValue = 10;
hgs
parents: 44
diff changeset
   219
		          
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   220
    }
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   221
    if ( mProgressDialog == NULL ) {
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   222
        mProgressDialog = new HbProgressDialog( HbProgressDialog::ProgressDialog );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   223
        mProgressDialog->actions().at(0)->disconnect( SIGNAL( triggered() ) );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   224
        connect ( mProgressDialog->actions().at(0), SIGNAL( triggered() ), this, SLOT( hideProgressDialog() ) );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   225
        mProgressDialog->setMinimum( 0 );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   226
    }
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   227
    mProgressDialog->setMaximum( maxValue );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   228
    mProgressDialog->setProgressValue( 0 );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   229
    mProgressDialog->setModal( true );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   230
    mProgressDialog->actions().at(0)->setText( GLX_BUTTON_HIDE );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   231
    mProgressDialog->open();
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   232
}
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   233
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   234
void GlxViewManager::hideProgressDialog( )
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   235
{
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   236
    mMainWindow->lower();
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   237
}
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   238
45
hgs
parents: 44
diff changeset
   239
void GlxViewManager::updateProgressDialog( int currentValue )
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   240
{
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   241
    static int i = 0;
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   242
    HbIcon icon;
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   243
    User::ResetInactivityTime();  
62
hgs
parents: 58
diff changeset
   244
    QString text( GLX_REFRESHING );
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   245
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   246
    if ( mProgressDialog ) {
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   247
        i = ++i % 10;
54
hgs
parents: 52
diff changeset
   248
        icon = HbIcon( QString( ":/data/Wait/qgn_graf_ring_wait_%1.svg" ).arg( i + 1, 2, 10, QChar( '0' ) ) );
52
hgs
parents: 50
diff changeset
   249
        mProgressDialog->setIcon(icon);
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   250
        
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   251
        int max = mProgressDialog->maximum() ;
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   252
        if ( currentValue > max ) {
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   253
            mProgressDialog->setMaximum( currentValue );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   254
            max = currentValue ;
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   255
        }
45
hgs
parents: 44
diff changeset
   256
        
hgs
parents: 44
diff changeset
   257
        if ( currentValue < 0 ) {
62
hgs
parents: 58
diff changeset
   258
            mProgressDialog->setText( text ); 
45
hgs
parents: 44
diff changeset
   259
            mProgressDialog->setProgressValue( 0 );
62
hgs
parents: 58
diff changeset
   260
            mProgressDialog->setProgressDialogType( HbProgressDialog::WaitDialog );
45
hgs
parents: 44
diff changeset
   261
        }
hgs
parents: 44
diff changeset
   262
        else {
hgs
parents: 44
diff changeset
   263
            int value = max - currentValue;
hgs
parents: 44
diff changeset
   264
            mProgressDialog->setProgressValue( value );
62
hgs
parents: 58
diff changeset
   265
            text.append( QString( "\n  %1 " ).arg( currentValue ) );
hgs
parents: 58
diff changeset
   266
            mProgressDialog->setText( text );
hgs
parents: 58
diff changeset
   267
            mProgressDialog->setProgressDialogType( HbProgressDialog::ProgressDialog );
45
hgs
parents: 44
diff changeset
   268
        }
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   269
    }
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   270
}
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   271
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   272
//to be called only when the photos plugin was activated by external means
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   273
void GlxViewManager::deactivateCurrentView()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   274
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   275
    GlxView *curr_view = (GlxView *) mMainWindow->currentView();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   276
    if ( curr_view ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   277
        curr_view->deActivate() ;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   278
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   279
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   280
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   281
void GlxViewManager::updateToolBarIcon(int id)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   282
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   283
    QString path;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   284
    int toolBarActionId = (int) GLX_ALL_ACTION_ID;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   285
    int count = mActionList.count();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   286
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   287
    qDebug("GlxViewManager::updateToolBarIcon() action ID list %d count %d", id, count);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   288
    
54
hgs
parents: 52
diff changeset
   289
    for ( int i = 0; i < count ; i++ ) {
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   290
        qDebug("GlxViewManager::updateToolBarIcon() toolBarActionId %d value %d", toolBarActionId, ( id & toolBarActionId ) );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   291
        //check and get the icon path
54
hgs
parents: 52
diff changeset
   292
        if ( ( id & toolBarActionId ) == toolBarActionId ) {
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   293
            mActionList[i]->setChecked(TRUE);                        
54
hgs
parents: 52
diff changeset
   294
        }
hgs
parents: 52
diff changeset
   295
        else {
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   296
            mActionList[i]->setChecked(FALSE);
54
hgs
parents: 52
diff changeset
   297
        }
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   298
        //to get it the next action id to verify it is selecter or not
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   299
        toolBarActionId = toolBarActionId << 1; 
54
hgs
parents: 52
diff changeset
   300
    }
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   301
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   302
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   303
void GlxViewManager::checkMarked()
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   304
{
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   305
    qDebug("GlxViewManager::checkMarked");
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   306
    QModelIndexList selectedModelIndex = mSelectionModel->selectedIndexes();
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   307
    for ( int i = 0 ; i <  mMarkingActionList.count(); i++) {
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   308
        if( mMarkingActionList.at(i)->data()==EGlxCmdSelect) {
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   309
       	    bool noSelection=selectedModelIndex.empty();
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   310
            mMarkingActionList.at(i)->setDisabled(noSelection);
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   311
            break;
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   312
        }
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   313
    }
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   314
}
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   315
71
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   316
void GlxViewManager::enterMarkingMode( qint32 viewId, qint32 commandId )
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   317
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   318
    GlxView *view = findView ( viewId );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   319
    qDebug("GlxViewManager::enterMarkingMode view ID %d", viewId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   320
    
71
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   321
    if ( !mMarkingToolBar ) {
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   322
        createMarkingModeToolBar(); //Marking mode tool bar is different from normal mode tool bar
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   323
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   324
    
71
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   325
    setMarkingToolBarAction( commandId );
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   326
    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   327
    if ( view ) { 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   328
        view->enableMarking();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   329
        view->takeToolBar();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   330
        view->addToolBar(mMarkingToolBar);
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   331
        mSelectionModel = view->getSelectionModel();
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   332
        if(mSelectionModel) 
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   333
        {
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   334
            connect(mSelectionModel, SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection& ) ), this, SLOT(checkMarked()));
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   335
            checkMarked();
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   336
        }
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   337
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   338
    qDebug("GlxViewManager::enterMarkingMode view ID %d exit", viewId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   339
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   340
71
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   341
void GlxViewManager::exitMarkingMode( qint32 viewId )
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   342
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   343
    GlxView *view = findView ( viewId );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   344
    qDebug("GlxViewManager::exitMarkingMode view ID %d", viewId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   345
    if ( view ) { 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   346
        view->disableMarking(); 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   347
        view->takeToolBar();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   348
        view->addToolBar(mViewToolBar);
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   349
        if(mSelectionModel)
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   350
        {
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   351
            disconnect(mSelectionModel, SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection& ) ), this, SLOT(checkMarked()));
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   352
        }
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   353
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   354
    qDebug("GlxViewManager::exitMarkingMode view ID %d exit", viewId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   355
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   356
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   357
void GlxViewManager::handleUserAction(qint32 viewId, qint32 commandId)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   358
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   359
    GlxView *view = findView ( viewId );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   360
    qDebug("GlxViewManager::handleUserAction view ID %d command id %d", viewId, commandId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   361
    if ( view ) { 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   362
        view->handleUserAction(commandId);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   363
    }    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   364
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   365
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   366
QItemSelectionModel *  GlxViewManager::getSelectionModel(qint32 viewId) 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   367
{ 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   368
    GlxView *view = findView ( viewId );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   369
    if ( view ) { 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   370
        return view->getSelectionModel();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   371
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   372
    return NULL;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   373
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   374
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   375
void GlxViewManager::setModel( QAbstractItemModel *model )
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   376
{
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   377
    if ( mView ) {
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   378
        mView->setModel( model ) ;
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   379
    }
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   380
    
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   381
    if ( mMenuManager ) {
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   382
        mMenuManager->setModel( model );
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   383
    }    
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   384
}
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   385
54
hgs
parents: 52
diff changeset
   386
GlxView * GlxViewManager::resolveView( qint32 id )
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   387
{
54
hgs
parents: 52
diff changeset
   388
    qDebug("GlxViewManager::resolveView %d", id );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   389
    GlxView *view = findView ( id );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   390
    if ( view ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   391
        return view ;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   392
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   393
    
54
hgs
parents: 52
diff changeset
   394
    view = GlxViewsFactory::createView( id, mMainWindow );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   395
    if ( view ) {
54
hgs
parents: 52
diff changeset
   396
        connect ( view, SIGNAL( actionTriggered( qint32 ) ), this, SLOT( actionProcess( qint32 ) ), Qt::QueuedConnection );
hgs
parents: 52
diff changeset
   397
        connect ( view, SIGNAL( itemSpecificMenuTriggered( qint32, QPointF ) ), this, SLOT( itemSpecificMenuTriggered( qint32, QPointF ) ), Qt::QueuedConnection );
hgs
parents: 52
diff changeset
   398
        mViewList.append( view );
hgs
parents: 52
diff changeset
   399
        mMainWindow->addView( view );
hgs
parents: 52
diff changeset
   400
        mMenuManager->addMenu( id, view->menu() );
hgs
parents: 52
diff changeset
   401
        
45
hgs
parents: 44
diff changeset
   402
        if ( mBackAction ) {
hgs
parents: 44
diff changeset
   403
            view->setNavigationAction( mBackAction );
hgs
parents: 44
diff changeset
   404
        }
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   405
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   406
    return view;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   407
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   408
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   409
void GlxViewManager::itemSpecificMenuTriggered(qint32 viewId,QPointF pos)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   410
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   411
    mMenuManager->ShowItemSpecificMenu(viewId,pos);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   412
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   413
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   414
void GlxViewManager::cancelTimer()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   415
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   416
    emit externalCommand(EGlxPluginCmdUserActivity);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   417
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   418
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   419
void GlxViewManager::effectFinished( )
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   420
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   421
    qDebug("GlxViewManager::EffectFinished");
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   422
    mMainWindow->releaseMouse();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   423
    deActivateView();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   424
    activateView(); 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   425
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   426
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   427
GlxView * GlxViewManager::findView(qint32 id)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   428
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   429
    qDebug("GlxViewManager::findView Id = %d ", id);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   430
    int count = mViewList.count();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   431
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   432
    for ( int i = 0 ; i < count; i++) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   433
        if ( mViewList.at(i)->compare(id) ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   434
            return mViewList.at(i);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   435
        }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   436
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   437
    return NULL;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   438
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   439
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   440
void GlxViewManager::deActivateView()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   441
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   442
    qDebug("GlxViewManager::deActivateCurrentView()");
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   443
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   444
    GlxView *view = (GlxView *) mMainWindow->currentView();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   445
    if ( view ){
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   446
        view->deActivate() ;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   447
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   448
    if (mView && view) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   449
        mView->setZValue(view->zValue());
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   450
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   451
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   452
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   453
void GlxViewManager::activateView()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   454
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   455
    qDebug("GlxViewManager::activateView()");
54
hgs
parents: 52
diff changeset
   456
hgs
parents: 52
diff changeset
   457
    mView->activate();
hgs
parents: 52
diff changeset
   458
    mView->show();
hgs
parents: 52
diff changeset
   459
    mView->setModel( mModel );
hgs
parents: 52
diff changeset
   460
    //visibility of tool bar dependes of view internal state so add the toolbar after setting model
hgs
parents: 52
diff changeset
   461
    mView->addToolBar( mViewToolBar );
hgs
parents: 52
diff changeset
   462
    mMainWindow->setCurrentView(mView, false);
hgs
parents: 52
diff changeset
   463
    mMainWindow->showFullScreen(); 
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   464
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   465
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   466
void GlxViewManager::createActions()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   467
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   468
    qDebug("GlxViewManager::createActions() " );
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   469
    mActionList.clear();  
54
hgs
parents: 52
diff changeset
   470
hgs
parents: 52
diff changeset
   471
    int curSubstate = getSubState();    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   472
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   473
    //create the All tool bar button action
45
hgs
parents: 44
diff changeset
   474
    HbAction* allAction = new HbAction( this );
54
hgs
parents: 52
diff changeset
   475
hgs
parents: 52
diff changeset
   476
    if( curSubstate == FETCHER_ITEM_S ) {
hgs
parents: 52
diff changeset
   477
        allAction->setData( EGlxCmdFetcherAllGridOpen );
hgs
parents: 52
diff changeset
   478
    }else{
hgs
parents: 52
diff changeset
   479
        allAction->setData( EGlxCmdAllGridOpen );
hgs
parents: 52
diff changeset
   480
    }
hgs
parents: 52
diff changeset
   481
45
hgs
parents: 44
diff changeset
   482
    mActionList.append( allAction );    
hgs
parents: 44
diff changeset
   483
    allAction->setIcon( HbIcon( GLXICON_ALL ) ) ;
hgs
parents: 44
diff changeset
   484
    allAction->setObjectName( "All Action" );
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   485
       
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   486
    //create the Album tool bar button action
45
hgs
parents: 44
diff changeset
   487
    HbAction* albumAction = new HbAction( this );
54
hgs
parents: 52
diff changeset
   488
hgs
parents: 52
diff changeset
   489
    if( curSubstate == FETCHER_ITEM_S ) {
hgs
parents: 52
diff changeset
   490
        albumAction->setData( EGlxCmdFetcherAlbumListOpen );
hgs
parents: 52
diff changeset
   491
    }else{
hgs
parents: 52
diff changeset
   492
        albumAction->setData( EGlxCmdAlbumListOpen );
hgs
parents: 52
diff changeset
   493
    }
hgs
parents: 52
diff changeset
   494
45
hgs
parents: 44
diff changeset
   495
    mActionList.append( albumAction );
hgs
parents: 44
diff changeset
   496
    albumAction->setIcon( HbIcon( GLXICON_ALBUMS ) ) ;
hgs
parents: 44
diff changeset
   497
    albumAction->setObjectName( "Album Action" );
54
hgs
parents: 52
diff changeset
   498
	
hgs
parents: 52
diff changeset
   499
	//in case of fetcher no need to create other actions
hgs
parents: 52
diff changeset
   500
	if( curSubstate == FETCHER_ITEM_S ) {
hgs
parents: 52
diff changeset
   501
		return;
hgs
parents: 52
diff changeset
   502
		}	
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   503
    //create the album tool bar button action
45
hgs
parents: 44
diff changeset
   504
    HbAction* cameraAction = new HbAction( this );
hgs
parents: 44
diff changeset
   505
    cameraAction->setData( EGlxCmdCameraOpen );
hgs
parents: 44
diff changeset
   506
    mActionList.append( cameraAction );  
hgs
parents: 44
diff changeset
   507
    cameraAction->setIcon( HbIcon( GLXICON_CAMERA ) ) ;
hgs
parents: 44
diff changeset
   508
    cameraAction->setObjectName( "Camera Action" );
hgs
parents: 44
diff changeset
   509
    
hgs
parents: 44
diff changeset
   510
    //Configure the 4 th Action in the tool bar
hgs
parents: 44
diff changeset
   511
    XQSettingsManager *ciSettingsManager = NULL;
hgs
parents: 44
diff changeset
   512
    ciSettingsManager = new XQSettingsManager(this);
hgs
parents: 44
diff changeset
   513
    
hgs
parents: 44
diff changeset
   514
    
hgs
parents: 44
diff changeset
   515
    XQSettingsKey* operatorLinkCenrepKey = NULL;
hgs
parents: 44
diff changeset
   516
    operatorLinkCenrepKey = new XQSettingsKey(XQSettingsKey::TargetCentralRepository, 
hgs
parents: 44
diff changeset
   517
                                            KGlxCi_UidGallery, KGlxOperatorLink);
hgs
parents: 44
diff changeset
   518
    QVariant value = ciSettingsManager->readItemValue(*operatorLinkCenrepKey);
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   519
    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   520
    
45
hgs
parents: 44
diff changeset
   521
    switch(value.toInt()) {
hgs
parents: 44
diff changeset
   522
        case KGlxOvi:
hgs
parents: 44
diff changeset
   523
            {
hgs
parents: 44
diff changeset
   524
                XQSettingsKey* oviCenrepKey = NULL;
hgs
parents: 44
diff changeset
   525
                oviCenrepKey = new XQSettingsKey(XQSettingsKey::TargetCentralRepository, 
hgs
parents: 44
diff changeset
   526
                                                        KGlxCi_UidGallery, KGlxOvi);
hgs
parents: 44
diff changeset
   527
                QVariant Ovivalue = ciSettingsManager->readItemValue(*oviCenrepKey, XQSettingsManager::TypeString);
hgs
parents: 44
diff changeset
   528
                HbAction* configurableAction = new HbAction(this);
hgs
parents: 44
diff changeset
   529
                configurableAction->setData(EGlxCmdOviOpen);
hgs
parents: 44
diff changeset
   530
                mActionList.append(configurableAction);
hgs
parents: 44
diff changeset
   531
            
hgs
parents: 44
diff changeset
   532
                if ( Ovivalue.isValid() && Ovivalue.canConvert<QString>() ) {
hgs
parents: 44
diff changeset
   533
                    configurableAction->setIcon( HbIcon( Ovivalue.toString() ) );
hgs
parents: 44
diff changeset
   534
                }
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   535
45
hgs
parents: 44
diff changeset
   536
                delete oviCenrepKey;
hgs
parents: 44
diff changeset
   537
            }
hgs
parents: 44
diff changeset
   538
            break;
hgs
parents: 44
diff changeset
   539
            
hgs
parents: 44
diff changeset
   540
        default:
hgs
parents: 44
diff changeset
   541
            qDebug("GlxViewManager::Configurable Action is empty " );
hgs
parents: 44
diff changeset
   542
            break;
hgs
parents: 44
diff changeset
   543
    }
hgs
parents: 44
diff changeset
   544
    
hgs
parents: 44
diff changeset
   545
    delete operatorLinkCenrepKey;
hgs
parents: 44
diff changeset
   546
    delete ciSettingsManager;
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   547
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   548
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   549
void GlxViewManager::createMarkingModeActions()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   550
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   551
    mMarkingActionList.clear();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   552
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   553
    //create the ok tool bar button action
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   554
    HbAction* selectAction = new HbAction(GLX_BUTTON_OK, this);
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   555
    selectAction->setData(EGlxCmdSelect);
45
hgs
parents: 44
diff changeset
   556
    selectAction->setObjectName( "Select Action" );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   557
    mMarkingActionList.append(selectAction);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   558
    connect( selectAction, SIGNAL(triggered( )), this, SLOT(handleAction( )), Qt::QueuedConnection );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   559
    mMarkingToolBar->addAction( selectAction );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   560
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   561
    //create the cancel tool bar button action
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 24
diff changeset
   562
    HbAction* cancelAction = new HbAction(GLX_BUTTON_CANCEL, this);
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   563
    cancelAction->setData(EGlxCmdCancel);
45
hgs
parents: 44
diff changeset
   564
    cancelAction->setObjectName( "Cancel Action" );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   565
    mMarkingActionList.append(cancelAction); 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   566
    connect( cancelAction, SIGNAL(triggered( )), this, SLOT(handleAction( )), Qt::QueuedConnection ); 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   567
    mMarkingToolBar->addAction( cancelAction );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   568
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   569
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   570
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   571
void GlxViewManager::createToolBar()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   572
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   573
    qDebug("GlxViewManager::createToolBar() " );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   574
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   575
    mViewToolBar = new HbToolBar();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   576
    mViewToolBar->setOrientation( Qt::Horizontal );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   577
    mViewToolBar->setVisible(true);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   578
    mViewToolBar->clearActions();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   579
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   580
    createActions();    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   581
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   582
    qDebug("GlxViewManager::createToolBar() clear the action" );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   583
    int count = mActionList.count();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   584
    for ( int i = 0; i < count; i++ ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   585
        connect( mActionList.at(i), SIGNAL(triggered( )), this, SLOT(handleAction( )) );
54
hgs
parents: 52
diff changeset
   586
        mActionList.at(i)->setCheckable( TRUE );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   587
        mViewToolBar->addAction( mActionList.at(i) );      
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   588
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   589
    qDebug("GlxViewManager::createToolBar() exit" );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   590
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   591
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   592
void GlxViewManager::createMarkingModeToolBar()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   593
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   594
    qDebug("GlxViewManager::createMarkingModeToolBar() " );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   595
    mMarkingToolBar = new HbToolBar();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   596
    mMarkingToolBar->setOrientation( Qt::Horizontal );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   597
    mMarkingToolBar->setVisible(true);            
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   598
    mMarkingToolBar->clearActions();    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   599
    createMarkingModeActions();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   600
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   601
71
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   602
void GlxViewManager::setMarkingToolBarAction( qint32 commandId )
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   603
{
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   604
    switch( commandId ) {
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   605
    case EGlxCmdAddToAlbum :
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   606
        mMarkingActionList.at( 0 )->setText( GLX_BUTTON_ADD );
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   607
        break;
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   608
        
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   609
    case EGlxCmdDelete :
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   610
        mMarkingActionList.at( 0 )->setText( GLX_BUTTON_DELETE );
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   611
        break;
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   612
        
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   613
    case EGlxCmdRemoveFrom :
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   614
        mMarkingActionList.at( 0 )->setText( GLX_BUTTON_REMOVE );
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   615
       break;
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   616
       
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   617
    case EGlxCmdSend :
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   618
        mMarkingActionList.at( 0 )->setText( GLX_BUTTON_SHARE );
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   619
        break;
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   620
        
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   621
    default :
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   622
        mMarkingActionList.at( 0 )->setText( GLX_BUTTON_OK );
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   623
        break;
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   624
    }
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   625
}
27f2d7aec52a 201039_01
hgs
parents: 62
diff changeset
   626
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   627
void GlxViewManager::addConnection()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   628
{    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   629
    if ( mMenuManager )
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   630
        connect(mMenuManager, SIGNAL( commandTriggered(qint32 ) ), this, SLOT( handleMenuAction(qint32 ) ));
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   631
    if ( mBackAction )
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   632
        connect(mBackAction, SIGNAL( triggered() ), this, SLOT( handleAction() ));
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   633
        
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   634
    if ( mEffectEngine )  {
44
hgs
parents: 43
diff changeset
   635
        connect( mEffectEngine, SIGNAL( effectFinished() ), this, SLOT( effectFinished() ), Qt::QueuedConnection );
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   636
    }        
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   637
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   638
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   639
void GlxViewManager::removeConnection()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   640
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   641
    int count = mActionList.count();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   642
    for ( int i = 0; i < count; i++ ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   643
        disconnect( mActionList.at(i), SIGNAL(triggered( )), this, SLOT(handleAction( )) );  
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   644
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   645
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   646
    count = mMarkingActionList.count();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   647
    for ( int i = 0; i < count; i++ ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   648
        disconnect( mMarkingActionList.at(i), SIGNAL(triggered( )), this, SLOT(handleAction( )) );  
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   649
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   650
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   651
    count = mViewList.count();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   652
    for ( int i = 0; i < count; i++ ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   653
        disconnect ( mViewList.at(i), SIGNAL(actionTriggered(qint32 )), this, SLOT(actionProcess(qint32 )) );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   654
        disconnect ( mViewList.at(i), SIGNAL(itemSpecificMenuTriggered(qint32, QPointF ) ), this, SLOT( itemSpecificMenuTriggered(qint32, QPointF ) ));
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   655
        mMenuManager->removeMenu( mViewList.at(i)->viewId(), mViewList.at(i)->menu() ) ;
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   656
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   657
	   
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   658
    if ( mMenuManager )
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   659
        disconnect(mMenuManager, SIGNAL( commandTriggered(qint32 ) ), this, SLOT( handleMenuAction(qint32 ) ));
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   660
    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   661
    if ( mBackAction )
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   662
        disconnect(mBackAction, SIGNAL( triggered() ), this, SLOT( handleAction() ));
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   663
        
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   664
    if ( mEffectEngine )  {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   665
        disconnect( mEffectEngine, SIGNAL( effectFinished() ), this, SLOT( effectFinished() ) );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   666
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   667
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   668
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   669
void GlxViewManager::destroyView(qint32 id)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   670
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   671
    qDebug("GlxViewManager::destroyView ");
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   672
    GlxView *view = findView ( id );
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   673
    mViewList.removeOne(view);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   674
    delete view;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   675
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   676
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   677
void GlxViewManager::actionProcess(qint32 id)
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   678
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   679
    qDebug("GlxViewManager::actionProcess action Id = %d ", id);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   680
    emit actionTriggered(id);
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   681
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   682
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   683
GlxViewManager::~GlxViewManager()
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   684
{
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   685
    qDebug("GlxViewManager::~GlxViewManager");
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   686
    HbStyleLoader::unregisterFilePath(":/data/photos.css");
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   687
	
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   688
    removeConnection();
45
hgs
parents: 44
diff changeset
   689
	
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   690
    delete mMenuManager;
45
hgs
parents: 44
diff changeset
   691
    qDebug("GlxViewManager::~GlxViewManager deleted menu manager");    
hgs
parents: 44
diff changeset
   692
    delete mViewToolBar;
hgs
parents: 44
diff changeset
   693
    delete mMarkingToolBar;
hgs
parents: 44
diff changeset
   694
    qDebug("GlxViewManager::~GlxViewManager deleted toolbar");
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   695
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   696
    while( mViewList.isEmpty( ) == FALSE){
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   697
        delete mViewList.takeLast() ;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   698
    }
45
hgs
parents: 44
diff changeset
   699
    qDebug("GlxViewManager::~GlxViewManager view deleted");    
24
99ad1390cd33 Revision: 201011
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 23
diff changeset
   700
        
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   701
    delete mBackAction;
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   702
    delete mProgressDialog;
45
hgs
parents: 44
diff changeset
   703
    
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   704
    if ( mEffectEngine ) {
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   705
        mEffectEngine->deregistertransitionEffect();
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   706
        delete mEffectEngine;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   707
    }
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   708
 
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   709
    if( mMainWindow != GlxExternalUtility::instance()->getMainWindow() ){
54
hgs
parents: 52
diff changeset
   710
        qDebug("GlxViewManager::~GlxViewManager delete mainwindow");
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   711
        delete mMainWindow;
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   712
    }
42
5e1df1b52eb3 201019_01
hgs
parents: 26
diff changeset
   713
    delete mWindowEventFilter;
23
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   714
    
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   715
    qDebug("GlxViewManager::~GlxViewManager Exit");
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   716
}
74c9f037fd5d Revision: 201007
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   717
54
hgs
parents: 52
diff changeset
   718
int GlxViewManager::getSubState()
hgs
parents: 52
diff changeset
   719
{
hgs
parents: 52
diff changeset
   720
    int curSubstate = NO_GRID_S;    
hgs
parents: 52
diff changeset
   721
    
hgs
parents: 52
diff changeset
   722
    if ( mModel  ) {    
hgs
parents: 52
diff changeset
   723
        QVariant variant = mModel->data( mModel->index(0,0), GlxSubStateRole );    
hgs
parents: 52
diff changeset
   724
        if ( variant.isValid() &&  variant.canConvert<int> ()  ) {
hgs
parents: 52
diff changeset
   725
            curSubstate = variant.value<int>();
hgs
parents: 52
diff changeset
   726
        }
hgs
parents: 52
diff changeset
   727
    }
hgs
parents: 52
diff changeset
   728
    return curSubstate;
hgs
parents: 52
diff changeset
   729
}