diff -r 57d4cdd99204 -r edfc90759b9f imageeditor/inc/iepb.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imageeditor/inc/iepb.h Fri Jan 29 13:53:17 2010 +0200 @@ -0,0 +1,196 @@ +/* +* Copyright (c) 2010 Ixonos Plc. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "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: +* Ixonos Plc +* +* Description: +* +*/ + + + +#ifndef IMAGEEDITORPLUGINBASE_H +#define IMAGEEDITORPLUGINBASE_H + +/// INCLUDES +#include +#include +#include "pluginbase.h" + +/// FORWARD DECLARATIONS +class CCoeControl; +class CEditorImage; + + +/// CONSTANTS +_LIT (KPgnResourcePath, "\\private\\101ffa91\\plugins\\"); + + +/* CLASS: CImageEditorPluginBase +* +* CImageEditorPluginBase is a plugin base class for all Image Editor +* plug-ins. +*/ +class CImageEditorPluginBase : public CPluginBase +{ + +public: + +/** @name Methods:*/ +//@{ + + /** NewL factory method, pops cleanupstack + * + * @param aResourcePath - plug-in resource path + * @param aResourceFile - plug-in resource file + * @return CImageEditorPluginBase *, pointer to created CImageEditorPluginBase object + */ + IMPORT_C static CImageEditorPluginBase * NewL ( + const TDesC & aResourcePath, + const TDesC & aResourceFile + ); + + /** Default constructor, cannot leave. + * + * @param - + * @return - + */ + IMPORT_C CImageEditorPluginBase (); + + /** Second phase constructor, may leave + * + * @param aResourcePath - plug-in resource path + * @param aResourceFile - plug-in resource file + * @return - + */ + IMPORT_C void ConstructL ( + const TDesC & aResourcePath, + const TDesC & aResourceFile + ); + + /** Destructor + * @param - + * @return - + */ + IMPORT_C virtual ~CImageEditorPluginBase (); + + /* GetProperty + * + * @see CPluginBase + */ + IMPORT_C virtual TInt SetProperty ( + TInt aPropertyId, + TDesC & aPropertyValue + ); + + /* GetProperty + * + * @see CPluginBase + */ + IMPORT_C virtual TInt GetProperty ( + TInt aPropertyId, + TDes & aPropertyValue + ); + + /* ShowPopupNote + * + * Shows plug-in related popup note. + * + * @param - + * @return - + */ + IMPORT_C virtual void ShowPopupNote (); + + /** InitPluginL + * + * Initializes image processing plug-in and returns CCoeControl. + * + * @param aRect - control rectangle + * @param aParent - parent control + * @param aPluginControl - reference to the plug-in control + * @return CCoeControl - plugin drawing area + */ + IMPORT_C virtual TInt InitPluginL ( + const TRect & aRect, + CCoeControl * aParent, + CCoeControl *& aPluginControl + ); + + /** ProcessImageL + * + * Sets the image to be processed. + * + * @param CFbsBitmap - pointer to CMiaImage instance + * @return - + */ + IMPORT_C virtual void ProcessImageL (CEditorImage * aImage); + + /** ReleasePlugin + * + * Releases plugin. + * + * @param - + * @return - + */ + IMPORT_C virtual void ReleasePlugin (); + + /* ReservedImageEditorBaseMethod1 + * + * @see CPluginBase + */ + IMPORT_C virtual void ReservedImageEditorBaseMethod1 (); + + /* ReservedImageEditorBaseMethod2 + * + * @see CPluginBase + */ + IMPORT_C virtual void ReservedImageEditorBaseMethod2 (); + +//@} + +protected: + +/** @name Methods:*/ +//@{ + +//@} + +/** @name Members:*/ +//@{ + +//@} + +private: + +/** @name Methods:*/ +//@{ + +//@} + +/** @name Members:*/ +//@{ + /* + * Internal representation pointer. + * + * DO NOT add any other private members here, so that the size + * of the class stays constant. + */ + void * iEditorPluginBaseInternalRepresentation; + +//@} + +}; + + +#endif + +// End of File