diff -r 000000000000 -r c9bc50fca66e usbmgmt/usbmgrtest/usbcontrolapp/controlappbinder/controlappbinder.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/usbmgmt/usbmgrtest/usbcontrolapp/controlappbinder/controlappbinder.h Tue Feb 02 02:02:59 2010 +0200 @@ -0,0 +1,91 @@ +/* +* Copyright (c) 2008-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: +* +*/ + +#ifndef CONTROL_APP_BINDER_H +#define CONTROL_APP_BINDER_H + +#include +#include + +#include "usbcontrolappshared.h" + + +_LIT(KUsbControlAppBinderTitle, "BIND"); + +class CUsbControlAppBinderKeys; + +NONSHARABLE_CLASS(CUsbControlAppBinderConsole) : public CBase + { +friend class CUsbControlAppBinderKeys; + +public: + static CUsbControlAppBinderConsole* NewLC(); + ~CUsbControlAppBinderConsole(); + +public: + void Start(); + void Stop() const; + +private: + CUsbControlAppBinderConsole(); + void ConstructL(); + void Move(TInt aX, TInt aY); + void Draw(); + + void StartAwareApp(); + void StartControlApp(); + void StartViewerApp(); + +private: + CConsoleBase* iConsole; + CUsbControlAppBinderKeys* iKeys; + + // Handles for the individual components to run in parallel + + static RProcess iAwareApp; + static RProcess iControlApp; + static RProcess iViewerApp; + +private: + // Run on the far right-hand side of the H4 screen, which (for + // the TextShell program) is 24 rows, 40 columns - each allows + // 2 row/column for borders + static const TInt KBinderWindowDepth = (KScreenDepth - 3); + static const TInt KBinderWindowWidth = (KScreenWidth - (KViewerNumCharactersOnLine + 4)); + }; + + + +NONSHARABLE_CLASS(CUsbControlAppBinderKeys) : public CActive + { +public: + static CUsbControlAppBinderKeys* NewL(CUsbControlAppBinderConsole& aUsbControlAppBinderConsole); + ~CUsbControlAppBinderKeys(); + +private: + CUsbControlAppBinderKeys(CUsbControlAppBinderConsole& aUsbControlAppBinderConsole); + void ConstructL(); + void DoCancel(); + void RunL(); + +private: + CUsbControlAppBinderConsole& iUsbControlAppBinderConsole; + }; + + +#endif // CONTROL_APP_BINDER_H +