ui/views/slideshowsettingsview/src/glxslideshowsettingsview.cpp
author hgs
Wed, 06 Oct 2010 14:49:39 +0530
changeset 71 27f2d7aec52a
parent 45 863223ea6961
permissions -rw-r--r--
201039_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
c499df2dbb33 Revision: 201015
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".
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
*
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
*
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
* Contributors:
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
*
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
* Description:   ?Description
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
*
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
*/
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
//Includes
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
#include <hbcombobox.h>
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
#include <hbmainwindow.h>
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
#include <hblabel.h>
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    22
#include <hbicon.h>
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    23
#include <hbpushbutton.h>
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
#include <QSize>
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    26
//User Includes
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
#include "glxuistd.h"
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    28
#include "glxviewids.h"
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    29
#include "glxslideshowsettingsview.h"
43
hgs
parents: 40
diff changeset
    30
#include "glxsettinginterface.h"
hgs
parents: 40
diff changeset
    31
#include "glxlocalisationstrings.h"
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    32
#include "glxcommandhandlers.hrh"
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    34
GlxSlideShowSettingsView::GlxSlideShowSettingsView( HbMainWindow *window ) 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    35
    : GlxView( GLX_SLIDESHOWSETTINGSVIEW_ID ), 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    36
      mEffect( NULL ), 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    37
      mDelay( NULL ), 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    38
      mWindow( window ),
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    39
      mContextlabel( NULL ), 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    40
      mEffectlabel( NULL ), 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    41
      mDelaylabel( NULL ), 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    42
      mPlaySlideShow( NULL ),
40
hgs
parents: 26
diff changeset
    43
      mSettings( NULL )
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    44
{
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    45
    mSettings = GlxSettingInterface::instance();
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    46
    setContentFullScreen( true );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    47
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    48
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    49
GlxSlideShowSettingsView::~GlxSlideShowSettingsView()
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    50
{
43
hgs
parents: 40
diff changeset
    51
    delete mContextlabel;
hgs
parents: 40
diff changeset
    52
    delete mEffectlabel;
hgs
parents: 40
diff changeset
    53
    delete mDelaylabel;
hgs
parents: 40
diff changeset
    54
    delete mEffect;
hgs
parents: 40
diff changeset
    55
    delete mDelay;
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    56
    delete mPlaySlideShow;
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    57
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    58
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    59
void GlxSlideShowSettingsView::setModel( QAbstractItemModel *model )
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    60
{
43
hgs
parents: 40
diff changeset
    61
    Q_UNUSED( model )
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
    return;
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    63
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    64
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    65
void GlxSlideShowSettingsView::orientationChanged( Qt::Orientation )
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    66
{
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    67
    setLayout();
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    68
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    70
void GlxSlideShowSettingsView::playSlideShow()
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    71
{
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    72
    emit actionTriggered( EGlxCmdSelectSlideshow );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    73
}
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    74
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
void GlxSlideShowSettingsView::activate()
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    76
{
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    77
    connect( mWindow, SIGNAL( orientationChanged( Qt::Orientation ) ), this, SLOT( orientationChanged( Qt::Orientation ) ) );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
    
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    79
    if ( mContextlabel == NULL ) {
43
hgs
parents: 40
diff changeset
    80
        mContextlabel = new HbLabel( GLX_MENU_SLIDESHOW, this );
45
hgs
parents: 43
diff changeset
    81
        mContextlabel->setObjectName( "SlideShow" );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    82
    }
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    83
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    84
    if ( mEffectlabel == NULL ) {
43
hgs
parents: 40
diff changeset
    85
        mEffectlabel = new HbLabel( GLX_LABEL_TRANSITION_EFFECT, this );
45
hgs
parents: 43
diff changeset
    86
        mEffectlabel->setObjectName( "Effect" );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    87
    }
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    88
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    89
    if ( mEffect == NULL ) {
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    90
        mEffect = new HbComboBox( this );
40
hgs
parents: 26
diff changeset
    91
        QStringList effectList = mSettings->slideShowEffectList();
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    92
        mEffect->addItems( effectList );
45
hgs
parents: 43
diff changeset
    93
        mEffect->setObjectName( "Effect List" );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
    }
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
    95
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
    if ( mDelaylabel == NULL ) {
43
hgs
parents: 40
diff changeset
    97
        mDelaylabel = new HbLabel( GLX_LABEL_TRANSITION_DELAY, this );
45
hgs
parents: 43
diff changeset
    98
        mDelaylabel->setObjectName( "Delay" );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    99
    }
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   100
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   101
    if ( mDelay == NULL ) {
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   102
        mDelay = new HbComboBox( this );
45
hgs
parents: 43
diff changeset
   103
        mDelay->setObjectName( "Delay List" );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   104
        QStringList delayList;
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   105
        delayList << GLX_VAL_SLOW << GLX_VAL_MEDIUM << GLX_VAL_FAST;
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   106
        mDelay->addItems( delayList );
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   107
    }
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   108
    
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   109
    if ( mPlaySlideShow == NULL ) {
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   110
        mPlaySlideShow = new HbPushButton( this );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   111
        mPlaySlideShow->setText( GLX_BUTTON_PLAY ) ; 
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   112
        connect( mPlaySlideShow, SIGNAL( clicked( bool ) ), this, SLOT( playSlideShow() ) );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   113
    }
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   114
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   115
    // Read the values from the cenrep    
43
hgs
parents: 40
diff changeset
   116
    mEffect->setCurrentIndex( mSettings->slideShowEffectIndex() );
hgs
parents: 40
diff changeset
   117
    mDelay->setCurrentIndex( mSettings->slideShowDelayIndex() );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   118
    setLayout();
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   119
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   120
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   121
void GlxSlideShowSettingsView::setLayout()
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   122
{
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   123
    QSize sz = screenSize();
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   124
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   125
    mContextlabel->setGeometry( 5, 25, sz.width() - 50, 100 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   126
    mEffectlabel->setGeometry( 5, 60, sz.width() - 50, 100 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   127
    mEffect->setGeometry( 15, 130, sz.width() - 50, 100 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   128
    mDelaylabel->setGeometry( 5, 160, sz.width() - 50, 100 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   129
    mDelay->setGeometry( 15, 230, sz.width() - 50, 100 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   130
    if( mWindow->orientation() == Qt::Vertical ) {
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   131
        mPlaySlideShow->setGeometry( 120, 300, 120, 60 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   132
    }
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   133
    else {
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   134
        mPlaySlideShow->setGeometry( 260, 300, 120, 60 );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   135
    }
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   136
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   137
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   138
void GlxSlideShowSettingsView::deActivate()
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   139
{
71
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   140
    //Store the current effect and delay before going back to the previous view
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   141
    mSettings->setslideShowEffectIndex( mEffect->currentIndex() );
27f2d7aec52a 201039_01
hgs
parents: 45
diff changeset
   142
    mSettings->setSlideShowDelayIndex( mDelay->currentIndex() );
26
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   143
    disconnect(mWindow, SIGNAL(orientationChanged(Qt::Orientation)), this, SLOT(orientationChanged(Qt::Orientation)));
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   144
}
c499df2dbb33 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
   145