logsui/logsapp/src/logsmainwindow.cpp
author hgs
Fri, 17 Sep 2010 16:47:32 +0300
changeset 18 acd4e87b24b4
parent 17 90fe74753f71
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
/*
4a5361db8937 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).
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
4a5361db8937 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
4a5361db8937 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"
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
4a5361db8937 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".
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
*
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
*
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
* Contributors:
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
*
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
* Description:
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
*
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
*/
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
#include "logsmainwindow.h"
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
#include "logslogger.h"
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
#include <QKeyEvent>
15
hgs
parents: 9
diff changeset
    21
#include <QApplication>
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
#include <xqserviceutil.h>
17
hgs
parents: 15
diff changeset
    23
#include <xqkeycapture.h>
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    24
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    25
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    26
//
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
// -----------------------------------------------------------------------------
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    28
//
15
hgs
parents: 9
diff changeset
    29
LogsMainWindow::LogsMainWindow() 
hgs
parents: 9
diff changeset
    30
    : HbMainWindow(), mForeground(false), mLocaleChanged(false)
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    31
{
15
hgs
parents: 9
diff changeset
    32
    qApp->installEventFilter(this);
17
hgs
parents: 15
diff changeset
    33
    mKeyCapture = new XQKeyCapture;
18
hgs
parents: 17
diff changeset
    34
    connect( this, SIGNAL(obscured()), this, SLOT(obscuredCalled()) );
hgs
parents: 17
diff changeset
    35
    connect( this, SIGNAL(revealed()), this, SLOT(revealedCalled()) );
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
}
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    39
//
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    40
// -----------------------------------------------------------------------------
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    41
//
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    42
LogsMainWindow::~LogsMainWindow()
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    43
{
17
hgs
parents: 15
diff changeset
    44
    stopKeyCapture();
hgs
parents: 15
diff changeset
    45
    delete mKeyCapture;
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    46
}
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    47
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    48
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    49
//
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    50
// -----------------------------------------------------------------------------
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    51
//
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    52
void LogsMainWindow::sendAppToBackground()
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    53
{
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    54
    LOGS_QDEBUG( "logs [UI] -> LogsMainWindow::sendAppToBackground" );
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    55
    XQServiceUtil::toBackground(true);
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    56
    LOGS_QDEBUG( "logs [UI] <- LogsMainWindow::sendAppToBackground" );
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    57
}
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    58
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    59
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    60
//
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    61
// -----------------------------------------------------------------------------
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    62
//
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    63
void LogsMainWindow::bringAppToForeground()
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    64
{
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    65
    LOGS_QDEBUG( "logs [UI] -> LogsMainWindow::bringAppToForeground" );
9
hgs
parents: 8
diff changeset
    66
    show();
hgs
parents: 8
diff changeset
    67
    raise();
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    68
    LOGS_QDEBUG( "logs [UI] <- LogsMainWindow::bringAppToForeground" );
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    69
}
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    70
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    71
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    72
//
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    73
// -----------------------------------------------------------------------------
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    74
//
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    75
bool LogsMainWindow::isForeground() const
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    76
{
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    77
    return mForeground;
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    78
}
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    79
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    80
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    81
//
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    82
// -----------------------------------------------------------------------------
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    83
//
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    84
void LogsMainWindow::keyPressEvent( QKeyEvent *event )
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    85
{
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    86
    LOGS_QDEBUG_2( "LogsMainWindow::keyPressEvent, key", event->key() );
17
hgs
parents: 15
diff changeset
    87
    if ( event->key() == Qt::Key_Call 
hgs
parents: 15
diff changeset
    88
         || event->key() == Qt::Key_Yes
hgs
parents: 15
diff changeset
    89
         || event->key() == Qt::Key_Enter ) {
0
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    90
        emit callKeyPressed();
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    91
        event->accept();
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    92
        return;
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    93
    }
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    94
    HbMainWindow::keyPressEvent(event);
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    95
}
4a5361db8937 Revision: 201015
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    96
15
hgs
parents: 9
diff changeset
    97
// -----------------------------------------------------------------------------
17
hgs
parents: 15
diff changeset
    98
//
15
hgs
parents: 9
diff changeset
    99
// -----------------------------------------------------------------------------
hgs
parents: 9
diff changeset
   100
//
hgs
parents: 9
diff changeset
   101
bool LogsMainWindow::eventFilter(QObject *obj, QEvent *event)
hgs
parents: 9
diff changeset
   102
{
hgs
parents: 9
diff changeset
   103
    if (event->type() == QEvent::ApplicationActivate) {
hgs
parents: 9
diff changeset
   104
        LOGS_QDEBUG( "logs [UI] -> eventFilter(), QEvent::ApplicationActivate" );
17
hgs
parents: 15
diff changeset
   105
        startKeyCapture();
hgs
parents: 15
diff changeset
   106
    } else if (event->type() == QEvent::ApplicationDeactivate ) {
15
hgs
parents: 9
diff changeset
   107
        LOGS_QDEBUG( "logs [UI] -> eventFilter(), QEvent::ApplicationDeactivate" );
17
hgs
parents: 15
diff changeset
   108
        stopKeyCapture();
15
hgs
parents: 9
diff changeset
   109
    } else if (event->type() == QEvent::LocaleChange) {
hgs
parents: 9
diff changeset
   110
        if (mForeground) {
hgs
parents: 9
diff changeset
   111
            emit localeChanged();
hgs
parents: 9
diff changeset
   112
        } else {
hgs
parents: 9
diff changeset
   113
            mLocaleChanged = true;
hgs
parents: 9
diff changeset
   114
        }
hgs
parents: 9
diff changeset
   115
    }
hgs
parents: 9
diff changeset
   116
    
hgs
parents: 9
diff changeset
   117
    return HbMainWindow::eventFilter(obj,event);
hgs
parents: 9
diff changeset
   118
}
17
hgs
parents: 15
diff changeset
   119
hgs
parents: 15
diff changeset
   120
// -----------------------------------------------------------------------------
hgs
parents: 15
diff changeset
   121
//
hgs
parents: 15
diff changeset
   122
// -----------------------------------------------------------------------------
hgs
parents: 15
diff changeset
   123
//
18
hgs
parents: 17
diff changeset
   124
void LogsMainWindow::obscuredCalled()
hgs
parents: 17
diff changeset
   125
{
hgs
parents: 17
diff changeset
   126
    LOGS_QDEBUG( "logs [UI] -> LogsMainWindow::obscuredCalled" );
hgs
parents: 17
diff changeset
   127
    mForeground = false;
hgs
parents: 17
diff changeset
   128
    emit appLostForeground();
hgs
parents: 17
diff changeset
   129
}
hgs
parents: 17
diff changeset
   130
hgs
parents: 17
diff changeset
   131
// -----------------------------------------------------------------------------
hgs
parents: 17
diff changeset
   132
//
hgs
parents: 17
diff changeset
   133
// -----------------------------------------------------------------------------
hgs
parents: 17
diff changeset
   134
//
hgs
parents: 17
diff changeset
   135
void LogsMainWindow::revealedCalled()
hgs
parents: 17
diff changeset
   136
{
hgs
parents: 17
diff changeset
   137
    LOGS_QDEBUG( "logs [UI] -> LogsMainWindow::revealedCalled" );
hgs
parents: 17
diff changeset
   138
    mForeground = true;
hgs
parents: 17
diff changeset
   139
    if (mLocaleChanged) {
hgs
parents: 17
diff changeset
   140
        LOGS_QDEBUG( "logs [UI] -> locale changed when we were on BG" );
hgs
parents: 17
diff changeset
   141
        emit localeChanged();
hgs
parents: 17
diff changeset
   142
        mLocaleChanged = false;
hgs
parents: 17
diff changeset
   143
    }
hgs
parents: 17
diff changeset
   144
    emit appGainedForeground();
hgs
parents: 17
diff changeset
   145
}
hgs
parents: 17
diff changeset
   146
hgs
parents: 17
diff changeset
   147
// -----------------------------------------------------------------------------
hgs
parents: 17
diff changeset
   148
//
hgs
parents: 17
diff changeset
   149
// -----------------------------------------------------------------------------
hgs
parents: 17
diff changeset
   150
//
17
hgs
parents: 15
diff changeset
   151
void LogsMainWindow::startKeyCapture()
hgs
parents: 15
diff changeset
   152
{
hgs
parents: 15
diff changeset
   153
    mKeyCapture->captureKey(Qt::Key_Yes);
hgs
parents: 15
diff changeset
   154
}
hgs
parents: 15
diff changeset
   155
hgs
parents: 15
diff changeset
   156
// -----------------------------------------------------------------------------
hgs
parents: 15
diff changeset
   157
//
hgs
parents: 15
diff changeset
   158
// -----------------------------------------------------------------------------
hgs
parents: 15
diff changeset
   159
//
hgs
parents: 15
diff changeset
   160
void LogsMainWindow::stopKeyCapture()
hgs
parents: 15
diff changeset
   161
{
hgs
parents: 15
diff changeset
   162
    if ( mKeyCapture ){
hgs
parents: 15
diff changeset
   163
        mKeyCapture->cancelCaptureKey(Qt::Key_Yes);
hgs
parents: 15
diff changeset
   164
    }
hgs
parents: 15
diff changeset
   165
}