videoplayerapp/videoplayerengine/tsrc/testvideoplayerengine/stub/inc/testviewplugin.h
author hgs
Fri, 16 Apr 2010 18:13:14 +0300
changeset 36 8aed59de29f9
permissions -rw-r--r--
201015
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
36
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  Stub test class
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
// Version : %version: %
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
#include "stub/inc/mpxviewpluginqt.h"
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
class TestViewPlugin : public MpxViewPlugin
hgs
parents:
diff changeset
    23
{
hgs
parents:
diff changeset
    24
    Q_OBJECT
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
public:
hgs
parents:
diff changeset
    27
    TestViewPlugin();
hgs
parents:
diff changeset
    28
    ~TestViewPlugin();
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
    /**
hgs
parents:
diff changeset
    31
     * createView is the second operation (after plugin construction which is done somewhere 
hgs
parents:
diff changeset
    32
     * in the plugin framework) executed in the application layer to make a fully operational 
hgs
parents:
diff changeset
    33
     * View Plugin descendant.
hgs
parents:
diff changeset
    34
     * I should allocate all of those resources that are required by plugin, but which are
hgs
parents:
diff changeset
    35
     * too expensive to allocate in constructor (eg. in case of plugin prefetching).
hgs
parents:
diff changeset
    36
     */
hgs
parents:
diff changeset
    37
    virtual void createView();
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
    /**
hgs
parents:
diff changeset
    40
     * destroyView is an operation that should be executed just before plugin deletion.
hgs
parents:
diff changeset
    41
     * Implementation should destroy all of resources allocated during createView execution.
hgs
parents:
diff changeset
    42
     * It's reason d'etre is based on a fact, that application doesn't controll when exactly
hgs
parents:
diff changeset
    43
     * plugin will be deleted, so destructor execution could be postponed still holding resources.
hgs
parents:
diff changeset
    44
     */
hgs
parents:
diff changeset
    45
    virtual void destroyView();
hgs
parents:
diff changeset
    46
hgs
parents:
diff changeset
    47
    /* COMMENT:
hgs
parents:
diff changeset
    48
     * view activation and deactivation are reversible operations
hgs
parents:
diff changeset
    49
     * that allows us to give up resources that we could temporary deallocate when that 
hgs
parents:
diff changeset
    50
     * specific view plugin goes into background.
hgs
parents:
diff changeset
    51
     */
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
    /**
hgs
parents:
diff changeset
    54
     * Called to notice view activation.
hgs
parents:
diff changeset
    55
     */
hgs
parents:
diff changeset
    56
    virtual void activateView();
hgs
parents:
diff changeset
    57
hgs
parents:
diff changeset
    58
    /**
hgs
parents:
diff changeset
    59
     * Called to notice view deactivation.
hgs
parents:
diff changeset
    60
     */
hgs
parents:
diff changeset
    61
    virtual void deactivateView();
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
    /**
hgs
parents:
diff changeset
    64
     * Is active.
hgs
parents:
diff changeset
    65
     */
hgs
parents:
diff changeset
    66
    virtual bool activated();
hgs
parents:
diff changeset
    67
    
hgs
parents:
diff changeset
    68
    /**
hgs
parents:
diff changeset
    69
     * gives actual view component, ready to put somewhere into the app layout.
hgs
parents:
diff changeset
    70
     * However, beware that calling to activate/deactivate in the meantime
hgs
parents:
diff changeset
    71
     * can invalidate that pointer.
hgs
parents:
diff changeset
    72
     * 
hgs
parents:
diff changeset
    73
     * NOTE: Returned type is choosen to be as generic as possible, 
hgs
parents:
diff changeset
    74
     * so please ensure that it fulfills all your needs (it was HbView* before)
hgs
parents:
diff changeset
    75
     */
hgs
parents:
diff changeset
    76
    virtual QGraphicsWidget* getView();
hgs
parents:
diff changeset
    77
    
hgs
parents:
diff changeset
    78
    
hgs
parents:
diff changeset
    79
    virtual MpxViewPlugin* viewPlugin();
hgs
parents:
diff changeset
    80
hgs
parents:
diff changeset
    81
public slots:
hgs
parents:
diff changeset
    82
hgs
parents:
diff changeset
    83
    /**
hgs
parents:
diff changeset
    84
     * Signalled by application when orientation has changed.
hgs
parents:
diff changeset
    85
     */ 
hgs
parents:
diff changeset
    86
    virtual void orientationChange(Qt::Orientation orientation);
hgs
parents:
diff changeset
    87
hgs
parents:
diff changeset
    88
    /**
hgs
parents:
diff changeset
    89
     * Implementation should take care either to implement
hgs
parents:
diff changeset
    90
       * go-back operation internally or to emit proper
hgs
parents:
diff changeset
    91
     * command signal to delegate that responsibility to
hgs
parents:
diff changeset
    92
     * framework (eg. to switch to previous view).
hgs
parents:
diff changeset
    93
     */ 
hgs
parents:
diff changeset
    94
    virtual void back();
hgs
parents:
diff changeset
    95
    
hgs
parents:
diff changeset
    96
private:
hgs
parents:
diff changeset
    97
hgs
parents:
diff changeset
    98
    bool mActive;
hgs
parents:
diff changeset
    99
};
hgs
parents:
diff changeset
   100