--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/wlanutilities/wlansniffer/aiplugin/inc/wsfaiview.h Thu Dec 17 09:20:28 2009 +0200
@@ -0,0 +1,263 @@
+/*
+* Copyright (c) 2007-2008 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: Class header for CWsfAiView
+*
+*/
+
+
+#ifndef C_WSFAIVIEW_H
+#define C_WSFAIVIEW_H
+
+// EXTERNAL INCLUDES
+#include <e32def.h>
+
+// INTERNAL INCLUDES
+#include "wsfaiuiobserver.h"
+#include "wsfaiplugincommon.h"
+
+
+// CONSTANTS
+// MACROS
+// DATA TYPES
+// FORWARD DECLARATIONS
+class CEikLabel;
+class MWsfAiPublishObserver;
+
+class CWsfAiView : public CBase,
+ public MWsfAiUiObserver
+ {
+ public: // Constructors
+ /**
+ * Two-phased constructor
+ * @since S60 5.0
+ * @param aPublishObserver - reference to the plugin's
+ * abstract interface
+ * @return instance of CWsfAiView class
+ */
+ static CWsfAiView* NewL( MWsfAiPublishObserver& aPublishObserver );
+
+ /**
+ * Two-phased constructor. Leaves the object on CleanupStack
+ * @since S60 5.0
+ * @param aPublishObserver - reference to the plugin's
+ * abstract interface
+ * @return instance of CWsfAiView class
+ */
+ static CWsfAiView* NewLC( MWsfAiPublishObserver& aPublishObserver );
+
+ /**
+ * Destructor of CWsfAiView class
+ * @since S60 5.0
+ */
+ ~CWsfAiView();
+
+ private:
+
+ /**
+ * Default C++ constructor
+ * @since S60 5.0
+ * @param aPublishObserver - reference to the plugin's
+ * abstract interface
+ */
+ CWsfAiView( MWsfAiPublishObserver& aPublishObserver );
+
+ /**
+ * 2nd phase constructor
+ * @since S60 5.0
+ */
+ void ConstructL();
+
+ public: // from MWsfAiUiObserver
+
+ /**
+ * Update the contents of control
+ * Set the focus on aCurrentImte
+ * @since S60 5.0
+ * @param aItemTextArray text of the current item
+ * @param aCurrentItem index of the current item
+ */
+ void UpdateHotSpotsL( MDesCArray* aItemTextArray,
+ TInt aCurrentItem );
+
+ /**
+ * Gives back the index of the selected item
+ * @since S60 5.0
+ * @return the index of the selected item
+ */
+ TInt SelectedItem();
+
+ /*
+ * Check if the control is multiline capable control
+ * @since S60 5.0
+ * @return Etrue if control is multiline capable control
+ */
+ TBool MultilineControl();
+
+ /*
+ * Display engine off text in UI
+ * @since S60 5.0
+ */
+ void DisplayEngineOffL();
+
+ /*
+ * Set the refressing UI note visible
+ * @since S60 5.0
+ */
+ void ForceRefreshingL();
+
+ /*
+ * Set the refressing UI note visible
+ * @since S60 5.0
+ */
+ void StartConnectingAnimationL();
+
+ /**
+ * Update the contents of control
+ * @since S60 5.0
+ * @param aItemTextArray text of the current item
+ */
+ void UpdateViewL( MDesCArray* aItemTextArray );
+
+ private:
+
+ /*
+ * Parses the string into ui component data
+ * @since S60 5.0
+ * @param aString - a string into ui
+ * @return - TBool - ETrue if deferred update is executed
+ */
+ TBool ParseStringL( const TDesC& aString );
+
+ /*
+ * Complete the change for new data - this is
+ * a callback for deferred update
+ * @since S60 5.0
+ * @param aPtr pointer to this
+ * @return ETrue if update is completed
+ */
+ static TInt DoCompleteUpdateL( TAny* aPtr );
+
+ /*
+ * Commit the update change
+ * @since S60 5.0
+ */
+ void DoCompleteUpdateL();
+
+ /**
+ * Activates refresh timer
+ * @since S60 5.0
+ */
+ void ActivateRefreshTimer();
+
+ /**
+ * 'MakePublishIconsL' and 'MakeTransparentPublishIconsL'
+ * create arrays consisting of icon ids for the icons to publish
+ * @since S60 5.0
+ */
+ void MakePublishIconsL();
+
+ /**
+ * 'MakePublishIconsL' and 'MakeTransparentPublishIconsL'
+ * create arrays consisting of icon ids for the icons to publish
+ * @since S60 5.0
+ */
+ void MakeTransparentPublishIconsL();
+
+ private: // Data
+
+ /**
+ * Coe env for loading string from resource
+ * Not Own.
+ */
+ CCoeEnv* iEnv;
+
+ /**
+ * Publish images in array
+ * Own.
+ */
+ CArrayFix< TInt >* iPublishIconArray;
+
+ /**
+ * Timer for update
+ * Own.
+ */
+ CPeriodic* iDeferredUpdater;
+
+ /**
+ * Times callback
+ * Own.
+ */
+ TCallBack* iDeferredUpdateCallBack;
+
+ /**
+ * Title text label
+ * Own.
+ */
+ CEikLabel* iTextLabel;
+
+ /**
+ * The label text
+ */
+ TName iCurrentText;
+
+ /**
+ * ID constants for Secure Icon
+ */
+ TWsfPluginIcons iUpdateSecureIconDeferred;
+
+ /**
+ * ID constants for Signal Strength Icon
+ */
+ TWsfPluginIcons iUpdateSignalStrengthIconDeferred;
+
+ /**
+ * ID constants for Status Icon
+ */
+ TWsfPluginIcons iUpdateStatusIconDeferred;
+
+ /**
+ * ID constants for Status Icon saved to remember after refreshing
+ */
+ TWsfPluginIcons iSavedUpdateStatusIconDeferred;
+
+ /**
+ * Pointer to Publish Observer interface
+ * Not Own.
+ */
+ MWsfAiPublishObserver* iPublishObserver;
+
+ /**
+ * Constants for 'WLAN scanning off' text
+ * Own.
+ */
+ HBufC* iStatusScanningOff;
+
+ /**
+ * Constants for 'Refreshing' text
+ * Own.
+ */
+ HBufC* iStatusRefreshing;
+
+ /**
+ * Constants for 'Connecting' text
+ * Own.
+ */
+ HBufC* iStatusConnecting;
+ };
+
+
+
+#endif // C_WSFAIVIEW_H
+
+// End of file