appfw/viewserver/inc/vwsdefpartner.h
changeset 0 2e3d3ce01487
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/appfw/viewserver/inc/vwsdefpartner.h	Tue Feb 02 10:12:00 2010 +0200
@@ -0,0 +1,134 @@
+// Copyright (c) 1999-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 __VWSDEF_partner_H__
+#define __VWSDEF_partner_H__
+
+#ifndef __VWSDEF_H__
+#include <vwsdef.h>
+#endif
+
+
+#include <e32std.h>
+
+//class defined
+class TVwsViewEvent;
+
+//class referenced
+class TVwsViewId;
+
+/**
+@internalTechnology
+@released
+*/
+#define KNullViewId TVwsViewId(KNullUid,KNullUid)
+
+/**
+@internalTechnology
+@released
+*/
+const TInt KErrViewWrongMode=1; // !!! Wrong error code - should be -ve & unique
+
+
+/**
+@publishedPartner
+@released
+*/
+#define KUidCustomCrossCheckValue 0x80282748
+
+/**
+@publishedPartner
+@released
+*/
+const TUid KUidCustomCrossCheck={KUidCustomCrossCheckValue};
+
+class TVwsViewEvent
+/**
+The TVwsViewEvent class encapsulates the attributes of a view server event.
+These are:
+- The event type
+- The view ids of the two views associated with the event
+- The attributes of any message which can go with the event.
+
+@publishedPartner
+@released 
+*/
+	{
+public:
+	enum TVwsViewEventType
+		{
+		EVwsActivateView,
+		EVwsDeactivateView,
+		EVwsScreenDeviceChanged,
+		EVwsDeactivationNotification,
+		EVwsActivationNotification,
+		EVwsDeactivateViewDifferentInstance
+		};
+public:
+	inline TVwsViewEvent();
+	inline TVwsViewEvent(TVwsViewEventType aEventType);
+	inline TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId);
+	inline TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId);
+	inline TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId,TUid aCustomMessageId,TInt aCustomMessageLength);
+public:
+	/**
+	The event type.
+	*/
+	TVwsViewEventType iEventType;
+	/**
+	The first view id associated with the event. This has a different meaning for each of the event types:
+	- For ActivateView events, it is the view to activate
+	- For DeactivateView events, it is the view to deactivate
+	- For ScreenDeviceChange events, it is the id of the currently active view
+	- For ActivationNotification events, it is the id of the activated view
+	- For DeactivationNotification events, it is the id of the deactivated view
+	*/
+	TVwsViewId iViewOneId;
+	/**
+	The second view id associated with the event. This has a different meaning for each of the event types:
+	- For ActivateView events, it is the view that will be deactivated
+	- For DeactivateView events, it is the view that has been activated
+	- For ScreenDeviceChange events, it is unused
+	- For ActivationNotification events, it is the view that will be deactivated
+	- For DeactivationNotification events, it is the id of the view that has been activated
+	*/
+	TVwsViewId iViewTwoId;
+	/**
+	The type of message being passed in the custom message buffer
+	*/
+	TUid iCustomMessageId;
+	/**
+	The length of the custom message being held by the server.
+	To retrieve the message itself from the server, a buffer of this length must be allocated
+	*/
+	TInt iCustomMessageLength;
+	};
+
+inline TVwsViewEvent::TVwsViewEvent() {}
+
+inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType)
+	: iEventType(aEventType),iViewOneId(),iViewTwoId(),iCustomMessageId(KNullUid),iCustomMessageLength(0) {}
+
+inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId)
+	: iEventType(aEventType),iViewOneId(aViewOneId),iViewTwoId(),iCustomMessageId(KNullUid),iCustomMessageLength(0) {}
+
+inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId)
+	: iEventType(aEventType),iViewOneId(aViewOneId),iViewTwoId(aViewTwoId),iCustomMessageId(KNullUid),iCustomMessageLength(0) {}
+
+inline TVwsViewEvent::TVwsViewEvent(TVwsViewEventType aEventType,const TVwsViewId& aViewOneId,const TVwsViewId& aViewTwoId,TUid aCustomMessageId,TInt aCustomMessageLength)
+	: iEventType(aEventType),iViewOneId(aViewOneId),iViewTwoId(aViewTwoId),iCustomMessageId(aCustomMessageId),iCustomMessageLength(aCustomMessageLength) {}
+
+
+#endif