idlefw/plugins/shortcutplugin/inc/caiscutshortcut.h
branchRCL_3
changeset 9 d0529222e3f0
parent 4 1a2a00e78665
child 10 5ef93ea513cb
child 18 bd874ee5e5e2
--- a/idlefw/plugins/shortcutplugin/inc/caiscutshortcut.h	Tue Feb 02 00:23:10 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,337 +0,0 @@
-/*
-* Copyright (c) 2005-2006 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:  Implementation for a shortcut.
-*
-*/
-
-
-#ifndef CAISCUTSHORTCUT_H
-#define CAISCUTSHORTCUT_H
-
-#include <e32base.h>
-
-#include "taiscutparser.h"
-
-class CAiScutEngine;
-class CAiScutTarget;
-class MAiContentObserver;
-class MAiPropertyExtension;
-
-/**
- *  Implementation for a shortcut
- *
- *  Handles parsing and launching an application shortcut
- *
- *  @since S60 v3.2
- */
-class CAiScutShortcut : public CTimer
-{
-
-public:
-
-    /**
-     * First phase constructor.
-     * Leaves the object on cleanup stack
-     *
-     * @since S60 v3.2
-     * @param aId Shortcut id
-     * @param aTarget The shortcut definition string.
-     * @param aEngine Reference to shortcut plug-in engine
-     */
-    static CAiScutShortcut* NewLC(TInt aId, const TDesC& aTarget,
-        CAiScutEngine& aEngine);
-
-    /**
-     * First phase constructor
-     *
-     * @since S60 v3.2
-     * @param aId Shortcut id
-     * @param aTarget The shortcut definition string
-     * @param aEngine Reference to shortcut plug-in engine
-     */
-    static CAiScutShortcut* NewL(TInt aId, const TDesC& aTarget,
-        CAiScutEngine& aEngine);
-
-    virtual ~CAiScutShortcut();
-
-    /**
-     * Returns the shortcut id
-     *
-     * @since S60 v3.2
-     * @return Shortcut id
-     */
-    TInt32 Id() const;
-
-    /**
-     * Publishes the shortcut content, non leaving version
-     *
-     * @since S60 v3.2
-     * @param aPlugin Reference to plug-in
-     * @param aObserver Content observer to publish to
-     */
-    void Publish(MAiPropertyExtension& aPlugin, MAiContentObserver& aObserver);
-
-    /**
-     * Checks if the application pointed to can be launched and reverts to the
-     * default setting if not. If no valid target can be found, the shortcut
-     * becomes empty. May only leave with KErrNotReady to signify that application
-     * architecture server or message server is not ready and access check should
-     * be retried later.
-     *
-     * @since S60 v3.2
-     * @param aCheckType Specifies which kind of shortcuts should check its access
-     * @return ETrue if the shortcut target is accessible
-     */
-    TBool CheckAccessL(TInt aCheckType);
-
-    /**
-     *
-     */
-    TBool IsTargetChanged() const;
-
-    /**
-     * Changes the shortcut target to the user defined setting
-     *
-     * @since S60 v3.2
-     * @param aNewTarget The new user defined shortcut target
-     */
-    void SetUserTarget(const TDesC& aNewTarget);
-
-    /**
-     * Deletes the user target.
-     *
-     * @since S60 v3.2
-     */
-    void DeleteUserTarget();
-
-    /**
-     * Launches the shortcut
-     *
-     * @since S60 v3.2
-     */
-    void LaunchL();
-
-    /**
-     * Launches the shortcut
-     *
-     * @since S60 v5.1
-     * @param aMessage A message to pass
-     */
-    void LaunchL(const TDesC8& aMessage);
-    
-    /**
-     * Set call state
-     *
-     * @since S60 v3.2
-     */
-    void SetCallState(TBool aStatus);
-
-    /**
-     *
-     * @since S60 v3.2
-     */
-    void SetToBePublished(TBool aFlag);
-
-    /**
-     *
-     * @since S60 v3.2
-     */
-    TBool NeedsToBePublished();
-
-    /**
-     * Return shortcut type.
-     *
-     * @since S60 v3.2
-     */
-    TShortcutType Type() const;
-
-    /**
-     * Return application uid of this shortcut.
-     *
-     * @since S60 v3.2
-     */
-    TUid AppUid() const;
-
-    /**
-     * Return an additional id this target may use when 
-     * launching.
-     *
-     * @since S60 v3.2
-     */
-    TUid AdditionalUid() const;
-    
-    /**
-     * Return current valid definition.
-     *
-     * @since S60 v3.2
-     */
-    TPtrC ActiveDefinition();
-    
-    /**
-     * Set the icon to publish to softkeys,
-     * icon area or to touch toolbar. Uses
-     * aIcon.iDestination to determine which icon
-     * is in question
-     *
-     * @since S60 v5.0
-     */
-    void SetIcon(TAiScutIcon aIcon);
-
-
-protected:
-
-
-    CAiScutShortcut(TInt aId, CAiScutEngine& aEngine);
-
-    void ConstructL(const TDesC& aTarget);
-
-    /**
-     * Creates a shortcut target object
-     *
-     * @since S60 v3.2
-     * @param aDefinition Shortcut target definition
-     * @return Pointer to shortcut target object
-     */
-    CAiScutTarget* CreateTargetL(
-        const TDesC& aDefinition, TBool aCreateUserTarget);
-
-    /**
-     * Publishes the shortcut content, leaving version
-     *
-     * @since S60 v3.2
-     * @param aPlugin Reference to plug-in
-     * @param aObserver Content observer to publish to
-     */
-    virtual void PublishL(MAiPropertyExtension& aPlugin, MAiContentObserver& aObserver);
-
-    /**
-     * Publishes shortcut caption
-     *
-     * @since S60 v3.2
-     * @param aPlugin Reference to plug-in
-     * @param aObserver Content observer to publish to
-     */
-    virtual TInt PublishCaption(
-        MAiPropertyExtension& aPlugin, MAiContentObserver& aObserver,
-        TInt aCaptionContentId) const;
-
-    /**
-     * Publishes shortcut icon
-     *
-     * @since S60 v3.2
-     * @param aPlugin Reference to plug-in
-     * @param aObserver Content observer to publish to
-     */
-    virtual TInt PublishIcon(
-        MAiPropertyExtension& aPlugin, MAiContentObserver& aObserver, TInt aIconContentId);
-
-    /**
-     * Set the icon to use instead of default icon
-     *
-     * @since S60 v3.2
-     */
-    void SetOverrideIcon(TAiScutIcon aIcon);
-
-    /**
-     * Set the icon to publish to softkeys
-     *
-     * @since S60 v3.2
-     */
-    void SetSoftkeyIcon(TAiScutIcon aIcon);
-
-    /**
-     * Set the icon to publish to touch toolbar
-     *
-     * @since S60 v5.0
-     */
-    void SetToolbarIcon(TAiScutIcon aIcon);
-    
-// from CActive/CTimer
-		
-	TInt RunError(TInt aError);
-		
-	void DoCancel();
-		
-	void RunL();
-
-protected:  // data
-
-    /**
-     * Shortcut id.
-     */
-    TInt32          iId;
-
-    /**
-     * Default shortcut target.
-     * Own.
-     */
-    CAiScutTarget*  iDefaultTarget;
-
-    /**
-     * User defined shortcut target.
-     * Own.
-     */
-    CAiScutTarget*  iUserTarget;
-
-    /**
-     * Stores the old target data while the new one is being published.
-     * During publishing the framework might still dereference pointers in the old
-     * target so it must be kept alive until the new target is successfully published.
-     * If publishing fails, this is taken back to use and the new target is deleted.
-     * Own.
-     */
-    CAiScutTarget*  iRetiredTarget;
-
-    /**
-     * Pointer to the last published target.
-     * DO NOT DELETE THROUGH THIS!
-     * Not own.
-     */
-    CAiScutTarget*  iLastPublishedTarget;
-
-    /**
-     * Pointer to the active target.
-     * Can point either to iDefaultTarget, iUserTarget or NULL
-     * DO NOT DELETE THROUGH THIS!
-     * Not own.
-     */
-    CAiScutTarget*  iActiveTarget;
-
-    /**
-     * Reference to the shortcut plug-in engine.
-     */
-    CAiScutEngine&  iEngine;
-
-    /**
-     * Boolean indicating if this shortcut needs to be published.
-     */
-    TBool           iNeedsToBePublished;
-
-    /**
-     * Call state
-     */
-    TBool           iActiveCall;
-    
-    /**
-     * Force the publish of this shortcut. For example
-     * after call state has changed the actual shortcut
-     * isn't changed but it still needs to be published.
-     */
-    TBool           iForcePublish;
-
-};
-
-#endif // CAISCUTSHORTCUT_H
-
-// End of File.