diff -r 666f914201fb -r 2fe1408b6811 epoc32/include/eikproc.h --- a/epoc32/include/eikproc.h Tue Nov 24 13:55:44 2009 +0000 +++ b/epoc32/include/eikproc.h Tue Mar 16 16:12:26 2010 +0000 @@ -1,1 +1,73 @@ -eikproc.h +// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members +// which accompanies this distribution, and is available +// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +#ifndef __EIKPROC_H__ +#define __EIKPROC_H__ + +#include +#include + +class CFileStore; +class CEikDocument; + +/** The controlling process for an application. + +An instance of this class is created by the Uikon environment. This instance +calls CApaProcess::AddNewDocumentL() to load the application DLL and +construct the new application which runs in this environment. + +It also provides services related to an application's main (non-embedded) document, +including: +- saving the main document to a direct file store +- providing the name of the most recently accessed file +- getting the name of the application DLL associated with a document. + +@publishedAll +@released */ +NONSHARABLE_CLASS(CEikProcess) : public CApaProcess + { +public: + /** Used as a parameter by CEikProcess::SetLastUsedFileL() and LastUsedFileL() + to indicate whether the function relates to the last opened or last created file.*/ + enum TLastUsedFile + { + /** Last opened file.*/ + ELastOpenFile, + /** Last created file. */ + ELastCreatedFile + }; +public: + static CEikProcess* NewL(const RFs& aFs, TProcessId aProcessId=KNullProcessId); + IMPORT_C TPtrC CommandTailEnd() const; + IMPORT_C TFileName MainDocFolder() const; + IMPORT_C void SetLastUsedFileL(TLastUsedFile aType,const TDesC& aFileName) const; + IMPORT_C TFileName LastUsedFileL(TLastUsedFile aType) const; + IMPORT_C void SetMainStore(CFileStore* aMainStore); + IMPORT_C CFileStore* MainStore() const; + IMPORT_C void AppFromDocL(TDes& aLibraryName,const TDesC& aDocumentName) const; + IMPORT_C void SaveToDirectFileStoreL(CEikDocument* aDoc,const TFileName* aNewFileName=NULL); + IMPORT_C void SaveToDirectFileStoreL(CEikDocument* aDoc,const TFileName* aNewFileName,TBool aReopen,TFileName* aTempFile=NULL); + IMPORT_C ~CEikProcess(); +private: + CEikProcess(const RFs& aFs); + void GetLibraryNameL(TDes& aLibraryName,const CFileStore& aDocStore, const CStreamDictionary& aStreamDic) const; + void OpenNewFileL(const TFileName* aNewFileName, const TParse& aNewFilePath); + CDictionaryStore* OpenMainAppIniFileLC() const; +private: + TPtrC iCommandTailEnd; + CFileStore* iMainStore; + }; + +#endif // __EIKPROC_H__