phoneapp/phoneuiview2/src/phoneuiqtview.cpp
author hgs
Fri, 15 Oct 2010 12:58:46 +0300
changeset 78 baacf668fe89
parent 76 cfea66083b62
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     1
/*!
78
hgs
parents: 76
diff changeset
     2
* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     3
* All rights reserved.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     8
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     9
* Initial Contributors:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    11
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    12
* Contributors:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    13
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    14
* Description:  Phone UI's Qt view.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    15
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    16
*/
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    17
#include <hbinstance.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    18
#include <hbaction.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    19
#include <hbtoolbar.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    20
#include <hbnamespace.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    21
#include <bubblemanager2.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    22
#include <hblineedit.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    23
#include <hbmenu.h>
78
hgs
parents: 76
diff changeset
    24
#include <dialpad.h>
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    25
78
hgs
parents: 76
diff changeset
    26
#include "phoneuiqtview_p.h"
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    27
#include "phoneuiqtview.h"
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    28
#include "qtphonelog.h"
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    29
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    30
PhoneUIQtView::PhoneUIQtView (HbMainWindow &window, QGraphicsItem *parent) :
78
hgs
parents: 76
diff changeset
    31
    HbView(parent),
hgs
parents: 76
diff changeset
    32
    m_priv(new PhoneUIQtViewPrivate(window, *this))
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    33
{
76
hgs
parents: 60
diff changeset
    34
    PHONE_TRACE
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    35
    // Set network name
78
hgs
parents: 76
diff changeset
    36
    setTitle(m_priv->networkName());
45
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
    37
    
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    38
    // Call handling widget
78
hgs
parents: 76
diff changeset
    39
    setWidget(m_priv->m_bubbleManager);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    40
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    41
    // change exit softkey to back button
78
hgs
parents: 76
diff changeset
    42
    setNavigationAction(m_priv->m_backAction);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    43
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    44
    // Set restricted mode off, normal state
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    45
    setRestrictedMode(false);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    46
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    47
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    48
PhoneUIQtView::~PhoneUIQtView ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    49
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    50
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    51
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    52
BubbleManagerIF& PhoneUIQtView::bubbleManager()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    53
{
78
hgs
parents: 76
diff changeset
    54
    return *m_priv->m_bubbleManager;
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    55
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    56
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    57
void PhoneUIQtView::addBubbleCommand (
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    58
    int bubbleId,
78
hgs
parents: 76
diff changeset
    59
    HbAction* action )
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    60
{
76
hgs
parents: 60
diff changeset
    61
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
    62
    m_priv->addBubbleCommand(bubbleId, action);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    63
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    64
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    65
void PhoneUIQtView::addParticipantListAction(
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    66
    int commandId,
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    67
    const QString& text,
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    68
    const HbIcon& icon)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    69
{
76
hgs
parents: 60
diff changeset
    70
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
    71
    m_priv->addParticipantListAction(commandId, text, icon);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    72
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    73
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    74
void PhoneUIQtView::clearParticipantListActions()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    75
{
76
hgs
parents: 60
diff changeset
    76
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
    77
    m_priv->clearParticipantListActions();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    78
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    79
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    80
void PhoneUIQtView::clearBubbleCommands (int bubbleId)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    81
{
76
hgs
parents: 60
diff changeset
    82
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
    83
    m_priv->clearBubbleCommands(bubbleId);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    84
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    85
78
hgs
parents: 76
diff changeset
    86
void PhoneUIQtView::setToolbarActions(
hgs
parents: 76
diff changeset
    87
        const QList<HbAction *> &newToolBarActions)
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    88
{
76
hgs
parents: 60
diff changeset
    89
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
    90
    m_priv->replaceActions(*toolBar(), newToolBarActions);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    91
78
hgs
parents: 76
diff changeset
    92
    if ( m_priv->m_window.orientation() == Qt::Horizontal ) {
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    93
        toolBar()->setOrientation(Qt::Horizontal);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    94
    }
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    95
    // update toolbar
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    96
    toolBar()->update();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    97
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    98
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    99
void PhoneUIQtView::hideToolbar ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   100
{
78
hgs
parents: 76
diff changeset
   101
    toolBar()->hide();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   102
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   103
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   104
void PhoneUIQtView::showToolbar ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   105
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   106
    setFocus();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   107
    toolBar()->show();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   108
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   109
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   110
int PhoneUIQtView::volumeSliderValue ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   111
{
78
hgs
parents: 76
diff changeset
   112
    return m_priv->volumeSliderValue();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   113
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   114
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   115
void PhoneUIQtView::setVolumeSliderValue (
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   116
        int value, int commandId, int maxVolumeValue, int minVolumeValue)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   117
{
76
hgs
parents: 60
diff changeset
   118
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
   119
    m_priv->setVolumeSliderValue(
hgs
parents: 76
diff changeset
   120
            value, commandId, maxVolumeValue, minVolumeValue);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   121
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   122
78
hgs
parents: 76
diff changeset
   123
void PhoneUIQtView::removeVolumeSlider()
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   124
{
78
hgs
parents: 76
diff changeset
   125
    PHONE_TRACE
hgs
parents: 76
diff changeset
   126
    m_priv->removeVolumeSlider();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   127
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   128
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   129
void PhoneUIQtView::setExpandAction(int bubbleId, int commandId)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   130
{
76
hgs
parents: 60
diff changeset
   131
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
   132
    m_priv->setExpandAction(bubbleId, commandId);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   133
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   134
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   135
void PhoneUIQtView::removeExpandAction(int bubbleId)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   136
{
76
hgs
parents: 60
diff changeset
   137
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
   138
    m_priv->removeExpandAction(bubbleId);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   139
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   140
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   141
void PhoneUIQtView::showDialpad()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   142
{
78
hgs
parents: 76
diff changeset
   143
    m_priv->showDialpad();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   144
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   145
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   146
void PhoneUIQtView::hideDialpad()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   147
{
78
hgs
parents: 76
diff changeset
   148
    m_priv->hideDialpad();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   149
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   150
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   151
bool PhoneUIQtView::isDialpadVisible()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   152
{
78
hgs
parents: 76
diff changeset
   153
    return m_priv->m_dialpad->isVisible();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   154
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   155
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   156
QString PhoneUIQtView::dialpadText()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   157
{
78
hgs
parents: 76
diff changeset
   158
    return m_priv->m_dialpad->editor().text();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   159
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   160
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   161
void PhoneUIQtView::clearAndHideDialpad()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   162
{
78
hgs
parents: 76
diff changeset
   163
    m_priv->m_dialpad->editor().setText(QString(""));
hgs
parents: 76
diff changeset
   164
    m_priv->m_dialpad->closeDialpad();
45
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   165
}
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   166
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   167
void PhoneUIQtView::clearDialpad()
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   168
{
78
hgs
parents: 76
diff changeset
   169
    m_priv->m_dialpad->editor().setText(QString(""));
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   170
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   171
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   172
void PhoneUIQtView::bringToForeground()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   173
{
78
hgs
parents: 76
diff changeset
   174
    m_priv->m_window.show(); 
hgs
parents: 76
diff changeset
   175
    m_priv->m_window.raise();
hgs
parents: 76
diff changeset
   176
}
hgs
parents: 76
diff changeset
   177
hgs
parents: 76
diff changeset
   178
void PhoneUIQtView::hide()
hgs
parents: 76
diff changeset
   179
{
hgs
parents: 76
diff changeset
   180
    m_priv->m_window.hide();   
hgs
parents: 76
diff changeset
   181
    m_priv->m_window.lower();     
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   182
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   183
78
hgs
parents: 76
diff changeset
   184
void PhoneUIQtView::setMenuActions(
hgs
parents: 76
diff changeset
   185
        const QList<HbAction*> &actions)
76
hgs
parents: 60
diff changeset
   186
{   
78
hgs
parents: 76
diff changeset
   187
    PHONE_TRACE
hgs
parents: 76
diff changeset
   188
    HbMenu *optionsMenu = &menuReference();
hgs
parents: 76
diff changeset
   189
    m_priv->replaceActions(*optionsMenu, actions);
76
hgs
parents: 60
diff changeset
   190
    
78
hgs
parents: 76
diff changeset
   191
    bool visible = false;
hgs
parents: 76
diff changeset
   192
    foreach (HbAction* action, actions) {
hgs
parents: 76
diff changeset
   193
        if(action->isVisible()){
hgs
parents: 76
diff changeset
   194
            visible = true;
hgs
parents: 76
diff changeset
   195
            break;
hgs
parents: 76
diff changeset
   196
        }
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   197
    }
78
hgs
parents: 76
diff changeset
   198
    PHONE_DEBUG2("-  visible", visible);
hgs
parents: 76
diff changeset
   199
    HbView* view = m_priv->m_window.currentView();
hgs
parents: 76
diff changeset
   200
    if (!visible && !m_priv->m_optionsMenu) {
hgs
parents: 76
diff changeset
   201
        PHONE_DEBUG("- takeMenu");
hgs
parents: 76
diff changeset
   202
        //takeMenu() - Removes the menu from the view and returns it to the caller.
hgs
parents: 76
diff changeset
   203
        //ownership of the menu is transfered.        
hgs
parents: 76
diff changeset
   204
        m_priv->m_optionsMenu = view->takeMenu();
hgs
parents: 76
diff changeset
   205
        
hgs
parents: 76
diff changeset
   206
    } else if (visible && m_priv->m_optionsMenu) {
hgs
parents: 76
diff changeset
   207
        // ownership of the menu is transfered
hgs
parents: 76
diff changeset
   208
        view->setMenu(m_priv->m_optionsMenu);
hgs
parents: 76
diff changeset
   209
        m_priv->m_optionsMenu = 0;
hgs
parents: 76
diff changeset
   210
    }
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   211
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   212
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   213
HbMenu &PhoneUIQtView::menuReference()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   214
{
76
hgs
parents: 60
diff changeset
   215
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
   216
    HbMenu* optionsMenu = m_priv->m_optionsMenu ?
hgs
parents: 76
diff changeset
   217
            m_priv->m_optionsMenu : menu();
76
hgs
parents: 60
diff changeset
   218
    return *optionsMenu;
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   219
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   220
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   221
void PhoneUIQtView::captureKey(Qt::Key key, bool capture)
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   222
{
78
hgs
parents: 76
diff changeset
   223
    m_priv->captureKey(key, capture);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   224
}
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   225
78
hgs
parents: 76
diff changeset
   226
void PhoneUIQtView::handleOrientationChange(
hgs
parents: 76
diff changeset
   227
        Qt::Orientation orientation)
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   228
{
76
hgs
parents: 60
diff changeset
   229
    PHONE_TRACE
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   230
    if (orientation==Qt::Horizontal) {
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   231
        toolBar()->setOrientation(Qt::Horizontal);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   232
    }
76
hgs
parents: 60
diff changeset
   233
}
hgs
parents: 60
diff changeset
   234
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   235
void PhoneUIQtView::shutdownPhoneApp()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   236
{
78
hgs
parents: 76
diff changeset
   237
    PHONE_TRACE
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   238
    QCoreApplication::quit();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   239
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   240
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   241
void PhoneUIQtView::setBackButtonVisible(bool visible)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   242
{
78
hgs
parents: 76
diff changeset
   243
    if (!m_priv->m_restrictedMode) {
hgs
parents: 76
diff changeset
   244
        m_priv->m_backAction->setEnabled(visible);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   245
    }
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   246
}
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   247
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   248
void PhoneUIQtView::setRestrictedMode(bool restrictedMode)
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   249
{
76
hgs
parents: 60
diff changeset
   250
    PHONE_TRACE
78
hgs
parents: 76
diff changeset
   251
    m_priv->setRestrictedMode(restrictedMode);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   252
}