diff -r 48060abbbeaf -r b3cee849fa46 screengrabber/inc/enginewrapper.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/screengrabber/inc/enginewrapper.h Tue Aug 31 15:15:20 2010 +0300 @@ -0,0 +1,141 @@ +/* +* Copyright (c) 2010 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: +* +*/ + +#ifndef ENGINEWRAPPER_H +#define ENGINEWRAPPER_H + +#include +#include + + +class SGEngine; +class GrabSettings; +class MainView; +class TWsEvent; +class HbDeviceProgressDialog; + +/** + * class that is used for communicating between Symbian and Qt code. + */ +class EngineWrapper{ +public: + + /** + * Constructor + */ + EngineWrapper(); + + /** + * Destructor + */ + ~EngineWrapper(); + + /** + * Initializes Engine Wrapper + * @return true if engine was started successfully + */ + bool init(); + +public: + + /* Functions that are called from UI */ + + /** + * Fetches settings from engine and converts Symbian data types to Qt's types. + */ + GrabSettings getGrabSettings(); + + /** + * Converts given parameters into Symbian data types and saves them into ScreenGrabber engine + * @param settings new settings + */ + bool saveSettings(const GrabSettings& settings); + + + /* + * Sends received s60 event to engine + */ +#if defined(HB_QT_S60_EVENT_FILTER) + bool handleCaptureCommands(const TWsEvent* aEvent); +#else + bool handleCaptureCommands(const QSymbianEvent *aEvent); +#endif + + + /** + * Sends UI to background + */ + void sendUIToBackground(); + void EnableRcpOfFoc(TBool aState); + void LoadSettings(void); +public: + + /* Functions that are called from engine: */ + + /** + * uses Notifications class to show image captured note + */ + void ShowImageCapturedNote(); + + /** + * uses Notifications class to show video captured note + */ + void ShowVideoCapturedNote(); + + /** + * uses Notifications class to show seguantial images captured note + */ + void ShowSequantialImagesCapturedNote(TInt amount); + + /** + * uses Notifications class to show error message + */ + void ShowErrorMessage(const TDesC16& aErrorMessage); + + /** + * uses Notifications class to show progressbar + */ + void ShowProgressBar(int max); + + /** + * increments shown progressbar's value + */ + void IncrementProgressbarValue(); + + /** + * closes progressbar + */ + void CloseProgressbar(); + + +private: + + bool convertTBoolToBool(TBool value); + +private: + + + /* Screen grabber engine */ + SGEngine *iSGEngine; + + /* progressnote that is shown */ + HbDeviceProgressDialog *iProgressNote; + +}; + +#endif; +