appinstaller/AppMngr2/inc/appmngr2appui.h
author Simon Howkins <simonh@symbian.org>
Mon, 22 Nov 2010 12:04:39 +0000
branchRCL_3
changeset 84 e6c5e34cd9b9
parent 66 8b7f4e561641
permissions -rw-r--r--
Adjusted to avoid exports, etc, from a top-level bld.inf

/*
* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:   Declares UI class for application
*
*/


#ifndef C_APPMNGR2APPUI_H
#define C_APPMNGR2APPUI_H

#include <aknViewAppUi.h>               // CAknViewAppUi
#include "appmngr2modelobserver.h"      // MAppMngr2ModelObserver

class CAppMngr2Model;
class CIdle;
class CAppMngr2ExitTimer;


class CAppMngr2AppUi : public CAknViewAppUi, public MAppMngr2ModelObserver
    {
public:     // constructor and destructor
    void ConstructL();
    ~CAppMngr2AppUi();

public:     // new functions
    CAppMngr2Model& Model() const;

public:     // from MAppMngr2ModelObserver
    void InstalledAppsChanged( TInt aMoreRefreshesExpected );
    void InstallationFilesChanged( TInt aMoreRefreshesExpected );
    TBool InstalledAppsDisplayed();
    TBool InstallationFilesDisplayed();
    
private:    // new functions
    static TInt DelayedConstructL( TAny* aSelf );
    void CancelNoteL();
    
private:    // from CAknViewAppUi
    void HandleCommandL( TInt aCommand );    

private:    // data
    CAppMngr2Model* iModel;
    TInt iResourceFileOffset;
    CIdle* iIdle;
    enum TDelayedConstructionStep
        {
        EFirstStep,
        ESecondStep,
        EAllDone
        } iDelayedConstructionStep;
    TBool iConstructInstallationFilesFirst;
    CAppMngr2ExitTimer* iExitTimer;
           
    TInt iNoteId;
    };

#endif  // C_APPMNGR2APPUI_H