epoc32/include/w32click.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
equal deleted inserted replaced
3:e1b950c65cb4 4:837f303aceeb
     1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     7 //
     8 // Initial Contributors:
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
     9 // Nokia Corporation - initial contribution.
    10 //
    10 //
    11 // Contributors:
    11 // Contributors:
    26 #endif
    26 #endif
    27 #ifndef __W32STD_H__
    27 #ifndef __W32STD_H__
    28 #include <w32std.h>
    28 #include <w32std.h>
    29 #endif
    29 #endif
    30 
    30 
       
    31 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
       
    32 #include <graphics/pointereventdata.h>
       
    33 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
    31 
    34 
    32 class CClickMaker: public CBase
    35 class CClickMaker: public CBase
    33 /** Key or pointer click plug-in provider interface.
    36 /** Key or pointer click plug-in provider interface.
    34 
    37 
    35 This class should be implemented by a plug-in DLL in order to produce a sound 
    38 This class should be implemented by a plug-in DLL in order to produce a sound 
    83 	event relative to origin of the parent window. Instead it is the position 
    86 	event relative to origin of the parent window. Instead it is the position 
    84 	on the screen. This is because the parent window has no meaning inside the 
    87 	on the screen. This is because the parent window has no meaning inside the 
    85 	plug-in as it does to the window server client and also knowledge 
    88 	plug-in as it does to the window server client and also knowledge 
    86 	of the screen position may be useful to the plug-in.
    89 	of the screen position may be useful to the plug-in.
    87 	
    90 	
    88 	@param aEvent The pointer event details. */
    91 	On devices where these features are supported, aEvent will contain pointer number, 
       
    92 	proximity of the pointer to the screen and/or pressure applied by the pointer to the screen.
       
    93 	In order to retrieve this information, implementation of this method should
       
    94 	use TPointerEvent::AdvancedPointerEvent().
       
    95 	
       
    96 	@param aEvent The pointer event details. 
       
    97 	@see TPointerEvent::AdvancedPointerEvent() */
    89 	virtual void PointerEvent(const TPointerEvent& aEvent)=0;
    98 	virtual void PointerEvent(const TPointerEvent& aEvent)=0;
    90 
    99 
    91 	/** This function is intended for future expansion of the interface, in case it 
   100 	/** This function is intended for future expansion of the interface, in case it 
    92 	needs to support sounds for other types of event.
   101 	needs to support sounds for other types of event.
    93 
   102 
   134 */
   143 */
   135 	{
   144 	{
   136 	TInt screenDeviceMode;
   145 	TInt screenDeviceMode;
   137 	};
   146 	};
   138 
   147 
   139 class TPointerEventData
       
   140 /**
       
   141 Passed to a Key Click Plug-in using the function CClickMaker::OtherEvent when the 
       
   142 aType value is EEventPointer.
       
   143 This includes information about the window the pointer event will be sent to.
       
   144 This is the normally the window being clicked on by the user, but pointer capturing 
       
   145 and grabbing may affect this.
       
   146 
       
   147 @publishedAll 
       
   148 @released 
       
   149 */
       
   150 	{
       
   151 public:
       
   152 	enum TSource
       
   153 		/**
       
   154 		A list of locations that WSERV receives events from
       
   155 		*/
       
   156 		{
       
   157 		/** The source is not specified. */
       
   158 		EUnspecified,
       
   159 		/** The event came from the kernel. */
       
   160 		EKernel,
       
   161 		/** The event came from a client API. */
       
   162 		EClient,
       
   163 		/** The event came from an Anim DLL. */
       
   164 		EAnimDLL,
       
   165 		};
       
   166 public:
       
   167 	/**
       
   168 	The version number of the data passed with EEventPointer, current always 0.
       
   169 	*/
       
   170 	TInt iVersion;
       
   171 	/**
       
   172 	The screen position of pointer event.
       
   173 	*/
       
   174 	TPoint iCurrentPos;
       
   175 	/**
       
   176 	The full pointer event data previously passed to the CClickMaker::PointerEvent function,
       
   177 	except that the iParentPosition will be the actual parent position, when previously passed
       
   178 	to the plug-in this value was the screen position.
       
   179 	*/
       
   180 	TPointerEvent iPointerEvent;
       
   181 	/**
       
   182 	The client handle of the window or zero if the window is not a client window.
       
   183 	*/
       
   184 	TUint32 iClientHandle;
       
   185 	/**
       
   186 	The current top left of the window on the screen.
       
   187 	*/
       
   188 	TPoint iWindowOrigin;
       
   189 	/**
       
   190 	The Window Group Identifier of the window group that is a parent (or grand parent etc.)
       
   191 	of the window the event is sent to or zero if the window is not a client window.
       
   192 	*/
       
   193 	TInt iWindowGroupId;
       
   194 	/**
       
   195 	The source that WSERV recieves the event from,
       
   196 	currently set to EUnspecified as this is for future expansion.
       
   197 	*/
       
   198 	TSource iSource;
       
   199 	};
       
   200 
       
   201 class TGroupWindowOpenData
   148 class TGroupWindowOpenData
   202 /**
   149 /**
   203 Passed to a Key Click Plug-in using the function CClickMaker::OtherEvent when the 
   150 Passed to a Key Click Plug-in using the function CClickMaker::OtherEvent when the 
   204 aType value is EEventGroupWindowOpen.
   151 aType value is EEventGroupWindowOpen.
   205 
   152