diff -r acc370d7f2f6 -r 2275db202402 DirectPrint/DirectPrintApp/engine/inc/directprintbasecapability.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DirectPrint/DirectPrintApp/engine/inc/directprintbasecapability.h Tue May 11 14:10:02 2010 +0800 @@ -0,0 +1,80 @@ +/* +* Copyright (c) 2010 Kanrikogaku Kenkyusho, Ltd. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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: +* Kanrikogaku Kenkyusho, Ltd. - Initial contribution +* +* Contributors: +* +* Description: +* {Description of the file} +* +*/ + +// Protection against nested includes +#ifndef DIRECTPRINTBASECAPABILITY_H +#define DIRECTPRINTBASECAPABILITY_H + +// System includes +#include +#include +#include + +// TYPE DEFINITIONS +typedef TBuf<64> TCapabilityTitle; + +/** + * + * Capability base class, pure virtual, needs to be derived + * + */ +class CDirectPrintBaseCapability : public CBase + { + public: // New methods + + virtual ~CDirectPrintBaseCapability() {}; + + /** + * Creates text for the setting item list box + * + * @return Correctly formatted list box text + */ + virtual HBufC* ListBoxTextL() = 0; + + /** + * Clones and returns copy of itself + * + * @return Cloned copy of the instance itself + */ + virtual CDirectPrintBaseCapability* CloneL() = 0; + + /** + * Creates CAknSettingItem for the list box + * + * @return CAknSettingItem object + */ + virtual CAknSettingItem* SettingItemLC(TInt aIndex) = 0; + + public: // Data + + // The index on the list from the top (0 = topmost) + TBool iIndexOnList; + + // Title of this capability + TCapabilityTitle iTitle; + + // UID of the capability + TInt iUid; + + // Value + TInt iValue; + }; + +#endif // DIRECTPRINTBASECAPABILITY_H + +// End of File