--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/logsui/LogsIndicatorPlugin/CLogsIndicatorPlugin.h Tue Feb 02 10:12:17 2010 +0200
@@ -0,0 +1,137 @@
+/*
+* Copyright (c) 2002 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:
+* Ecom plugin to implement touch support for universal missed calls indicator.
+*
+*
+*/
+
+
+#ifndef CLOGSINDICATORPLUGIN_H
+#define CLOGSINDICATORPLUGIN_H
+
+
+// Until aknstylusactivatedpopupcontent.h is fixed
+class TAknWindowComponentLayout;
+
+// INCLUDES
+#include <AknIndicatorPlugin.h>
+#include <eikcmobs.h>
+#include <aknstylusactivatedpopupcontent.h>
+
+#include <cenrepnotifyhandler.h>
+#include <centralrepository.h>
+
+// FORWARD DECLARATION
+class CRepository;
+
+// The maximum length of the event number string
+const TInt KMaxEventNumberLength = 4; //9999 = 4 numbers
+
+// CLASS DECLARATION
+
+/**
+ * Implements shared text pool
+ */
+class CLogsIndicatorPlugin : public CAknIndicatorPlugin, MCenRepNotifyHandlerCallback
+ {
+ public:
+
+ static CLogsIndicatorPlugin* NewL();
+
+
+ public: // from CAknIndicatorPlugin
+ /**
+ * Implements stylus tap actions for the indicator in question
+ * @param aUid UID of an indicator
+ * @return none
+ */
+ void HandleIndicatorTapL(const TInt aUid);
+
+ /**
+ * Returns the description used as link text, displayed with
+ * the indicator icon in the indicator popup.
+ *
+ * @param aUid UID of the indicator.
+ * @param[out] aTextType Type of the text,
+ * @see TAknIndicatorPluginTextTypes.
+ *
+ * @return Indicator description or link text.
+ * Ownership is transferred.
+ */
+ HBufC* TextL( const TInt aUid, TInt& aTextType );
+
+ public: // from MCenRepNotifyHandlerCallback
+
+ /**
+ * This callback method is used to notify the client about
+ * changes for integer value keys, i.e. key type is EIntKey.
+ *
+ * @param aId Id of the key that has changed.
+ * @param aNewValue The new value of the key.
+ */
+ void HandleNotifyInt( TUint32 aId, TInt aNewValue );
+
+
+ ~CLogsIndicatorPlugin();
+
+ private:
+
+ CLogsIndicatorPlugin();
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ */
+ void ConstructL();
+
+ /**
+ * Create singular or plural content message for the popup
+ * @return constructed text
+ *
+ * NOTE! Ownership of the text is transferred to caller.
+ */
+ HBufC* CreatePopupContentMessageL();
+
+
+ private:
+
+ // Command link array for popup
+ RArray<TAknContentLink> iLinkArray;
+
+ // Owns. Popup heading
+ HBufC* iPopupHeading;
+
+ // Owns. Popup content singular (template)
+ HBufC* iPopupTextOne;
+
+ // Owns. Popup content plural (template)
+ HBufC* iPopupTextMultiple;
+
+ // Owns. Command link text (Show)
+ HBufC* iLinkText;
+
+ // Owns. Reference to central repository for fetching the missed call count
+ CRepository* iRepositoryLogs;
+ // Owns. Reference to central repository for observing the missed call count changes
+ CCenRepNotifyHandler* iNotifyHandlerLogs;
+
+ TInt iUid;
+
+ TInt iResourceFileOffset;
+ };
+#endif // CLOGSINDICATORPLUGIN_H
+
+
+
+// End of File