diff -r 6ca72c0fe49a -r a941bc465d9f wvuing/IMPSConnectionUI/UISrc/CCommandAbsorbingControl.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wvuing/IMPSConnectionUI/UISrc/CCommandAbsorbingControl.h Wed Sep 01 12:31:13 2010 +0100 @@ -0,0 +1,228 @@ +/* +* Copyright (c) 2004 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: Command absorber to eat all key presses. +* +*/ + +#ifndef __CCOMMANDABSORBINGCONTROL_H +#define __CCOMMANDABSORBINGCONTROL_H + +// INCLUDES +#include + + +//FORWARD DECLARATION +class CEikAppUi; +class CEikButtonGroupContainer; + + + +// CLASS DECLARATION +/** + * Command absorber to eat all key presses. + * + * Puts empty CBA on the screen and absorbs + * all the key events. + * + * @lib ConnectionUi.lib + * @since 2.1 + */ +NONSHARABLE_CLASS( CCommandAbsorbingControl ) : public CCoeControl + { + /** + * UI event & command flusher. + * @since 2.1 + */ + NONSHARABLE_CLASS( CCommandFlush ) : protected CActive + { +public: // constructors and destructor + + /** + * C++ default constructor. + */ + CCommandFlush(); + + /** + * Destructor. + */ + virtual ~CCommandFlush(); + + +public: // New functions + + /** + * Executes the flush. + * @since 2.1 + */ + void Flush(); + + +protected: // From CActive + + + /** + * RunL(), RunError() and DoCancel() + * implement the normal CActive usage protocol. + */ + void RunL(); + TInt RunError( TInt aError ); + void DoCancel(); + + + +private: // New private helper methods + + /** + * Waits the started asynchronous steps + * to complete using the CActiveSchedulerWait. + * @since 2.1 + */ + void WaitCompletion(); + + + /** + * Stops the previously started + * CActiveSchedulerWait wait loop. + * @since 2.1 + */ + void Completed(); + +private: // Data + + ///