epoc32/include/w32adll.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
     1.1 --- a/epoc32/include/w32adll.h	Wed Mar 31 12:27:01 2010 +0100
     1.2 +++ b/epoc32/include/w32adll.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -1,9 +1,9 @@
     1.4  // Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5  // All rights reserved.
     1.6  // This component and the accompanying materials are made available
     1.7 -// 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
     1.8 +// under the terms of "Eclipse Public License v1.0"
     1.9  // which accompanies this distribution, and is available
    1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.12  //
    1.13  // Initial Contributors:
    1.14  // Nokia Corporation - initial contribution.
    1.15 @@ -311,24 +311,57 @@
    1.16  	
    1.17  	@return A reference to the calling client's thread. */
    1.18  	virtual const RThread &Client()=0;
    1.19 -	virtual void ReplyBuf(const TDesC8 &aDes)=0;				// Reply a buffer to the client
    1.20 -	virtual void ReplyBuf(const TDesC16 &aDes)=0;				// Reply a buffer to the client
    1.21 +	/** Send a reply to the client process in response to a request
    1.22 +	from the client. 	
    1.23 +	
    1.24 +	@see RAnim::CommandReply()
    1.25 +	
    1.26 +	@param aDes The data to be sent back to the client
    1.27 +	 */
    1.28 +	virtual void ReplyBuf(const TDesC8 &aDes)=0;
    1.29 +	/** Send a reply to the client process in response to a request
    1.30 +	from the client. 	
    1.31 +	
    1.32 +	@see RAnim::CommandReply()
    1.33 +	
    1.34 +	@param aDes The data to be sent back to the client
    1.35 +	 */
    1.36 +	virtual void ReplyBuf(const TDesC16 &aDes)=0;				
    1.37  	/** Panics the client. 
    1.38  	
    1.39  	This will result in the client thread being destroyed. */
    1.40  	virtual void Panic() const=0;
    1.41 +	
    1.42  	//Event functions
    1.43 +	
    1.44  	/** Switches animation raw event handling on and off.
    1.45  	
    1.46  	If raw event handling is switched on, then raw events, e.g. pointer, key, or power events
    1.47  	are all offered to the animation event handling code's MEventHandler::OfferRawEvent().
    1.48  	
    1.49 +	If Animation works in a window for which advanced pointers have been enabled,
    1.50 +	then after switching on raw event handling it will receive pointer events from all 
    1.51 +	detected pointers. Otherwise it will receive events only from one emulated pointer.
    1.52 +	
    1.53  	@param aGetEvents If ETrue, raw events are passed to the animation 
    1.54 -	event handling code. If EFalse, events are not passed to the animation. */
    1.55 +	event handling code. If EFalse, events are not passed to the animation. 
    1.56 +	@see RWindowBase::EnableAdvancedPointers() */
    1.57  	virtual void GetRawEvents(TBool aGetEvents) const=0;
    1.58  	/** Posts a raw event, just as if it had come from the kernel.
    1.59 +	  
    1.60 +	If aRawEvent has pointer-related type (move, switch on, down, up or out of range),
    1.61 +	then its Z coordinate and iPointerNumber fields will be validated and may be
    1.62 +	overwritten by WSERV in order to guarantee correct behaviour depending on:
    1.63 +	1. Pointer Pressure and Proximity support on current platform.
    1.64 +	2. Multiple pointers support on current platform.
    1.65 +	3. Animation's awareness of these fields. If Animation works in a window
    1.66 +	   for which advanced pointers have been enabled, it is assumed that it has
    1.67 +	   initialized these fields. Otherwise WSERV will assume that these fields have
    1.68 +	   not been provided and may overwrite them with most appropriate values.
    1.69 +	For more information about event validation, please refer to System Documentation.
    1.70  	
    1.71 -	@param aRawEvent The raw event */
    1.72 +	@param aRawEvent The raw event 
    1.73 +	@see RWindowBase::EnableAdvancedPointers() */
    1.74  	virtual void PostRawEvent(const TRawEvent &aRawEvent) const=0;
    1.75  	/** Posts a key event.
    1.76  	
    1.77 @@ -504,12 +537,11 @@
    1.78  	@param aOrdinalPriority The new ordinal priority of the window.
    1.79  	@return KErrNotFound if there is no window group with the specified ID, KErrNone otherwise. */
    1.80  	virtual TInt SetOrdinalPosition(TInt aWindowGroupId,TInt aPos,TInt aOrdinalPriority)=0;
    1.81 -
    1.82 +	
    1.83  	/** Accessor for window configuration.
    1.84  
    1.85  	@param aWindowConfig Gets filled in with window configuration details. */
    1.86  	virtual void WindowConfig(TWindowConfig& aWindowConfig) const=0;
    1.87 -	
    1.88  private:
    1.89  	virtual void Reserved1() const;
    1.90  	virtual void Reserved2() const;
    1.91 @@ -563,11 +595,14 @@
    1.92  	Note: this function is called automatically by the animation DLL framework in the 
    1.93  	Redraw() function. */
    1.94  	virtual void ActivateGc()=0;
    1.95 -	/** Sets the rectangle that this animation is to draw to.
    1.96 +	/** Sets the rectangle that this animation will draw to. 
    1.97  	
    1.98  	This function must be called as part of the initialisation/construction of 
    1.99  	the CAnim-derived object, i.e. in CAnim::ConstructL(). This is so that the 
   1.100 -	window server knows which area the animation is operating in.
   1.101 +	window server knows which area the animation is operating in. Anything that 
   1.102 +	is drawn by the animation outside this rectangle may not be redrawn correctly
   1.103 +	as the window server uses this rectangle to decide when the animation should
   1.104 +	be redrawn.
   1.105  	
   1.106  	@param aRect The rectangle to be drawn to. */
   1.107  	virtual void SetRect(const TRect &aRect)=0;
   1.108 @@ -677,33 +712,6 @@
   1.109  	@return A pointer to the sprite member. */
   1.110  	virtual TSpriteMember *GetSpriteMember(TInt aMember) const=0;
   1.111  	/** Redraws part of a sprite.
   1.112 -
   1.113 -	WSERV1:	
   1.114 -
   1.115 -	The updates a sprite on the screen, possibly after the bitmap for a particular 
   1.116 -	sprite member has been changed.
   1.117 -	
   1.118 -	Two types of redraw are possible. A full update takes the bitmap off the screen 
   1.119 -	and then re-draws it. This is 'safe' in that the screen always reflects 
   1.120 -	the contents of the sprite bitmap. However it can result in flicker. Use the 
   1.121 -	aRect parameter to specify the (small) part of the sprite which has been changed, 
   1.122 -	then any flicker will only occur in this rectangle. 
   1.123 -	
   1.124 -	A full update is required if you have removed pixels from the mask, i.e. made 
   1.125 -	pixels in the sprite transparent when they were not before. If drawing is 
   1.126 -	additive, e.g. you are using a mask or the draw mode is EDrawModePEN, a partial 
   1.127 -	update is possible. Otherwise the aFullUpdate argument is ignored and a full 
   1.128 -	update is always done.
   1.129 -	
   1.130 -	Note: if the sprite member aMember is not visible then there is no need for a change 
   1.131 -	to the display, so the aRect and aFullUpdate parameters are ignored.
   1.132 -	
   1.133 -	param aMember The index of the sprite member that is to be updated.
   1.134 -	param aRect The part of the sprite member which has changed.
   1.135 -	param aFullUpdate ETrue for a full update, EFalse otherwise.
   1.136 -
   1.137 -	WSERV2:
   1.138 -
   1.139  	Updates a sprite on the screen, possibly after the bitmap for a particular 
   1.140  	sprite member has been changed.
   1.141  	
   1.142 @@ -713,7 +721,7 @@
   1.143  	A full update used to be required if you had removed pixels from the mask, i.e. made 
   1.144  	pixels in the sprite transparent when they were not before. If drawing is 
   1.145  	additive, e.g. you are using a mask or the draw mode is EDrawModePEN, a partial 
   1.146 -	update used to be possible. But newer versions of the window-server always do full back to front rendering.
   1.147 +	update used to be possible. But current versions of the window-server always do full back to front rendering.
   1.148  	
   1.149  	Note: if the sprite member aMember is not visible then there is no need for a change 
   1.150  	to the display, so the aRect and aFullUpdate parameters are ignored.