dependencies/AknTaskList.h
author Christian Morlok <symbian.org@christianmorlok.de>
Wed, 07 Apr 2010 14:35:19 +0200
branchv5backport
changeset 54 666a2952b5b3
parent 31 a3e98f9c292b
permissions -rw-r--r--
renamed dlls+exe to prevent conflicts with existing files in emulator; changelog attached. * renamed dlls/exe: - aifw.dll to aifw_hs.dll - cputils to cputils_hs - aiidleint.dll to aiidleint_hs.dll - aiutils.dll to aiutils_hs.dll - MenuInterface.dll to MenuInterface_hs.dll - XCFW.dll to XCFW_hs.dll - homescreen.exe to homescreen_hs.exe - ailaunch.exe to ailaunch_hs.exe * new UID for Active Idle (aifw_hs.dll, aiidleint_hs.dll and homescreen.exe): #define AI_UID3_AIFW_COMMON 0xEDFF45C4 (was 0x102750F0 = 271012080) * new UID for cputils_hs.dll: 0xE3E7134E (was 0x20016B7F = 536963967) * new UID for AI Utilities Factory (aiutils_hs.dll): 0xEC55106C (was 0x10281865 = 271063141) * new UID for MenuInterface_hs.dll: 0xEEE24485 (was 0x10210EAB = 270601899) * new UID for XCFW_hs.dll: 0xEB12332F (was 0x10210EA0 = 270601888) * new UID for ailaunch_hs.exe: 0xEF5A047A (was 0x200286E3 = 537036515)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     1
/*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     2
* Copyright (c) 2005 Nokia Corporation and/or its subsidiary(-ies).
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     3
* All rights reserved.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     4
* This component and the accompanying materials are made available
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     6
* which accompanies this distribution, and is available
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     8
*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
     9
* Initial Contributors:
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    11
*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    12
* Contributors:
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    13
*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    14
* Description: 
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    15
*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    16
*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    17
*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    18
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    19
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    20
#ifndef AKNTASKLIST_H
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    21
#define AKNTASKLIST_H
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    22
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    23
// INCLUDES
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    24
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    25
#include <w32std.h>
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    26
#include <apgtask.h>
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    27
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    28
// CLASS DECLARATION
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    29
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    30
/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    31
*  Class for finding out about running applications.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    32
*  This class specialises in locating and identifying root applications,
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    33
*  those applications who do not have any parent window group.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    34
*  It can be used along-side TApaTaskList.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    35
*
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    36
*  @since Series 60 3.0
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    37
*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    38
class CAknTaskList : public CBase
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    39
	{
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    40
public:
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    41
    /**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    42
    * Factory function
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    43
    * @param aWsSession an open session to the window server, often from CEikonEnv::WsSession()
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    44
    * @return a new fully constructed instance of CAknTaskList
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    45
    */
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    46
	IMPORT_C static CAknTaskList* NewL(RWsSession& aWsSession);
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    47
    /**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    48
    * Factory function
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    49
    * @param aWsSession an open session to the window server, often from CEikonEnv::WsSession()
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    50
    * @return a new fully constructed instance of CAknTaskList, which is on the cleanup stack
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    51
    */
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    52
	IMPORT_C static CAknTaskList* NewLC(RWsSession& aWsSession);
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    53
    /**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    54
    * Destructor.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    55
    */
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    56
	IMPORT_C ~CAknTaskList();
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    57
	
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    58
	/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    59
	* Refresh the window group array
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    60
	*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    61
	IMPORT_C void UpdateListL();
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    62
	/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    63
	* Accessor for the window group array
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    64
	* @return an array containing the window groups of running applications.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    65
	*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    66
	IMPORT_C const RArray<RWsSession::TWindowGroupChainInfo>& WgArray() const;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    67
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    68
	/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    69
	* Find an application with the requested UID 3, which is running as a root application
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    70
	* @param aAppUid the UID 3 of the target application.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    71
	* @return a TApaTask which refers to the running instance of the application.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    72
	* if the application is not running, the TApaTask's Exists() function will return EFalse.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    73
	*/	
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    74
	IMPORT_C TApaTask FindRootApp(TUid aAppUid) const;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    75
	/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    76
	* Query whether an application's window group is running as a root application.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    77
	* @param aWgId the window group identifier of the target application.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    78
	* @return ETrue if this window group is running as a root window group.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    79
	*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    80
	IMPORT_C TBool IsRootWindowGroup(TInt aWgId) const;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    81
	
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    82
	/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    83
	* Find the parent window group. If there is no parent, 0 is returned.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    84
	* @param aWgId the window group id that you want to find the parent of.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    85
	* @return The window group id of the parent, or 0 if there is no parent.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    86
	*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    87
	IMPORT_C TInt FindParentWgId(TInt aWgId) const;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    88
	/**
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    89
	* Find the child window group. If there is no child, 0 is returned.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    90
	* @param aWgId the window group id that you want to find the child of.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    91
	* @return The window group id of the child, or 0 if there is no child.
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    92
	*/
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    93
	IMPORT_C TInt FindChildWgId(TInt aWgId) const;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    94
	
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    95
private:
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    96
	CAknTaskList(RWsSession& aWsSession);
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    97
	void ConstructL();
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    98
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
    99
private:
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
   100
	RWsSession& iWs;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
   101
	RArray<RWsSession::TWindowGroupChainInfo> iWgs;
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
   102
	};
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
   103
a3e98f9c292b added missing files
kashif.sayed
parents:
diff changeset
   104
#endif