--- a/browserplugins/browsergpsplugin/src/GpsPlugin.cpp Tue Feb 02 00:12:41 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,259 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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: Interface to Browser for handling embedded Gps requests.
-*
-*/
-
-
-// INCLUDE FILES
-#include <e32std.h>
-#include <npupp.h>
-#include <E32HAL.H>
-#include "GpsPlugin.h"
-#include "GpsObserver.h"
-#include <CSatelliteInfoUI.h>
-
-
-// CONSTANTS
-
-enum TIdentifiersNames {
- EIdLatitude,
- EIdLongitude,
- EIdAlt,
- EIdHorizontalAccuracy,
- EIdVerticalAccuracy,
- EIdOnGps,
- EIdSatelliteStatus,
- EIdTickCount,
- EIdLast
- };
-
-const NPUTF8 *GpsPluginIdentifierNames[EIdLast]
-= { "latitude", // 0
- "longitude", // 1
- "altitude", // 2
- "horizontalaccuracy", // 3
- "verticalaccuracy", // 4
- "ongps", // 5
- "showsatellitestatus", // 6
- "tickcount", // 7
- };
-
-const TBool IsMethod[] = {
- EFalse, // latitude,
- EFalse, // longitude,
- EFalse, // altitude
- EFalse, // horizontalaccuracy
- EFalse, // verticalaccuracy
- EFalse, // ongps
- ETrue, // showSatelliteStatus
- EFalse, // tickcount
- };
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::CGpsPlugin
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ----------------------------------------------------------------------------
-CGpsPlugin::CGpsPlugin()
- {
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::NewL
-// Two-phased constructor.
-// ----------------------------------------------------------------------------
-CGpsPlugin* CGpsPlugin::NewL()
- {
- CGpsPlugin* self = new (ELeave) CGpsPlugin;
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
- return self;
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::ConstructL
-// Symbian 2nd phase constructor can leave.
-// ----------------------------------------------------------------------------
-void CGpsPlugin::ConstructL()
- {
- iGpsPluginIdentifiers = new (ELeave) NPIdentifier[EIdLast];
- NPN_GetStringIdentifiers( GpsPluginIdentifierNames, EIdLast,
- iGpsPluginIdentifiers );
-
- iGpsObserver = CGpsObserver::NewL( this );
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::Destructor
-// ----------------------------------------------------------------------------
-CGpsPlugin::~CGpsPlugin()
- {
- delete [] iGpsPluginIdentifiers;
- delete iGpsObserver;
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::Deallocate
-// ----------------------------------------------------------------------------
-void CGpsPlugin::Deallocate ()
- {
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::InvokeCallback
-// ----------------------------------------------------------------------------
-bool CGpsPlugin::InvokeCallback( TDesC8& name,
- const NPVariant *args, uint32_t argCount )
- {
- CGpsPluginEcomMain* lGpsPPluginEcomMain = (CGpsPluginEcomMain*) Dll::Tls();
- NPNetscapeFuncs* lNetscapeFuncs = lGpsPPluginEcomMain->Funcs();
- if (lNetscapeFuncs && iInstanceHandle)
- {
- void* value = 0;
- NPError npErr
- = lNetscapeFuncs->getvalue( iInstanceHandle, NPNVWindowNPObject,
- (void*)&value );
- if (npErr == NPERR_NO_ERROR)
- {
- NPVariant resultVariant;
- VOID_TO_NPVARIANT( resultVariant );
- NPIdentifier ident
- = NPN_GetStringIdentifier( (const NPUTF8 *)(name.Ptr()) );
- return NPN_Invoke( iInstanceHandle, (NPObject*)value,
- ident, args, argCount, &resultVariant );
- }
- }
- return false;
- }
-
-// ----------------------------------------------------------------------------
-// CWidgetManagerPlugin::HasMethod
-// ----------------------------------------------------------------------------
-
-bool CGpsPlugin::HasMethod( NPIdentifier name )
- {
- for ( TInt i= 0; i < EIdLast; i++ )
- {
- if ( name == iGpsPluginIdentifiers[i] )
- {
- return IsMethod[i];
- }
- }
- return false;
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::HasProperty
-// ----------------------------------------------------------------------------
-bool CGpsPlugin::HasProperty( NPIdentifier name )
- {
- for ( TInt i= 0; i < EIdLast; i++ )
- {
- if ( name == iGpsPluginIdentifiers[i] )
- {
- return !IsMethod[i];
- }
- }
- return false;
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::GetProperty
-// ----------------------------------------------------------------------------
-bool CGpsPlugin::GetProperty( NPIdentifier name, NPVariant *variant )
- {
- // default variant value maps to javascript undefined
- VOID_TO_NPVARIANT( *variant );
- if ( name == iGpsPluginIdentifiers[EIdLatitude] )
- {
- DOUBLE_TO_NPVARIANT( iGpsObserver->Latitude(), *variant );
- }
- else if ( name == iGpsPluginIdentifiers[EIdLongitude] )
- {
- DOUBLE_TO_NPVARIANT( iGpsObserver->Longitude(), *variant );
- }
- else if ( name == iGpsPluginIdentifiers[EIdAlt] )
- {
- DOUBLE_TO_NPVARIANT( iGpsObserver->Altitude(), *variant );
- }
- else if ( name == iGpsPluginIdentifiers[EIdHorizontalAccuracy] )
- {
- DOUBLE_TO_NPVARIANT( iGpsObserver->HorizontalAccuracy(), *variant );
- }
- else if ( name == iGpsPluginIdentifiers[EIdVerticalAccuracy] )
- {
- DOUBLE_TO_NPVARIANT( iGpsObserver->VerticalAccuracy(), *variant );
- }
- else if ( name == iGpsPluginIdentifiers[EIdTickCount] )
- {
- INT32_TO_NPVARIANT( iGpsObserver->TickCount(), *variant );
- }
- else
- {
- return EFalse;
- }
- return ETrue;
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::Invoke
-// ----------------------------------------------------------------------------
-bool CGpsPlugin::Invoke( NPIdentifier name,
- NPVariant* /*args*/,
- uint32_t /*argCount*/,
- NPVariant *result )
- {
- VOID_TO_NPVARIANT( *result );
- if ( name == iGpsPluginIdentifiers[EIdSatelliteStatus] )
- {
- TRAP_IGNORE(
- CSatelliteInfoUI* satelliteUI = CSatelliteInfoUI::NewL();
- (void) satelliteUI->ExecuteLD( _L("BrowserGpsPlugin") ) );
- }
- return true;
- }
-
-// ----------------------------------------------------------------------------
-// CGpsPlugin::SetPropertyL
-// ----------------------------------------------------------------------------
-bool CGpsPlugin::SetPropertyL( NPIdentifier name, NPVariant *variant )
- {
- if ( name == iGpsPluginIdentifiers[EIdOnGps] )
- {
- NPString str = NPVARIANT_TO_STRING( *variant );
- iGpsObserver->RequestNotificationL(str);
- }
- else
- {
- return EFalse;
- }
- return ETrue;
- }
-
-// ----------------------------------------------------------------------------
-// CBAPPlugin::SetWindowL
-// Called by Browser for window creation.
-// (other items were commented in a header).
-// ----------------------------------------------------------------------------
-void CGpsPlugin::SetWindowL(
- MPluginAdapter* /*aPluginAdapter*/, // Allows callback to Browser
- const TRect& /*aRect*/) // Window information
- {
- }
-// End of File