diff -r 000000000000 -r 8466d47a6819 meetingrequest/mragnversit2/inc/cesmragnversit2stringprovider.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/meetingrequest/mragnversit2/inc/cesmragnversit2stringprovider.h Thu Dec 17 08:39:21 2009 +0200 @@ -0,0 +1,81 @@ +/* +* Copyright (c) 2005-2009 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: Caches language specific text fields from a +* resource file and provides access to them. +* +* +*/ + +#ifndef CESMRAGNVERSIT2STRINGPROVIDER_H +#define CESMRAGNVERSIT2STRINGPROVIDER_H + +//System includes +#include // CBase +#include // RFs +#include // RResourceFile +#include // TResourceReader + +//User includes +#include "esmragnversit2strings.hrh" // TStringId + +/** + * Class to load and cache strings from resource files. + * @internalTechnology + */ +class CESMRAgnVersit2StringProvider : public CBase + { +public: // Construction/destruction. + /** + * Creates a new CESMRAgnVersit2StringProvider and returns it + * @return pointer to the new CESMRAgnVersit2StringProvider + * @internalTechnology + */ + static CESMRAgnVersit2StringProvider* NewL(); + + /** + * C++ Destructor. + */ + ~CESMRAgnVersit2StringProvider(); + +public: // Methods. + /** + * Returns a string based on the TStringId parameter. If the array item at index + * aStringId is NULL, then that particular string has not been requested yet. If + * this is the case, then the string is retrieved from the resource file and set + * to aIndex in the string array. + * @param aStringId string index to return + * @return reference to a descriptor containing the string + * @internalTechnology + */ + const TDesC& StringL(TStringId aStringId); + +private: // Construction. + CESMRAgnVersit2StringProvider(); + void ConstructL(); + +private: // Methods. + void ReadStringFromResourceL(TStringId aStringId); + void ReadAllStringsL(); + +private: // Members. + RFs iFs; + HBufC* iResourceBuffer; + RResourceFile iResourceFile; + TResourceReader iResourceReader; + RPointerArray iStringArray; + }; + +#endif + +// End of file.