--- a/windowing/windowserver/inc/Graphics/wsdrawresource.h Tue Jun 22 15:21:29 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-// Copyright (c) 2008-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:
-//
-
-/**
- @publishedPartner
- @prototype
-*/
-
-#ifndef __WSDRAWRESOURCE_H__
-#define __WSDRAWRESOURCE_H__
-
-#include <w32std.h>
-#include <graphics/sgresource.h>
-
-class RWsDrawableSource;
-
-/**
-The UID for MWsDrawResource.
-@see MWsDrawResource
-@see CWindowGc::Interface
-@publishedPartner
-@prototype
-*/
-static const TUid KMWsDrawResourceInterfaceUid = { 0x102864E9 };
-
-/**
-An extension interface for CWindowGc and CRemoteGc to draw RWsDrawableSources.
-
-Usage:
-@code
-MWsDrawResource* gcDrawResource = static_cast<MWsDrawResource*>(gc->Interface(KMWsDrawResourceInterfaceUid));
-if(gcDrawResource)
- {
- gcDrawResource->DrawResource(TPoint(5,5), drawableSource);
- }
-@endcode
-@see RWsDrawableSource
-@see CWindowGc::Interface
-@publishedPartner
-@prototype
-*/
-class MWsDrawResource
- {
-public:
- /**
- Draws an image based resource which may be generated using non-native rendering API such as OpenGL ES
- or OpenVG. The resource will be drawn at the specified position in its original size with orientation
- according to the specified rotation parameter. The current clipping region applies.
-
- @see RWsDrawableSource
-
- @param aPos The position of the top-left corner on a window.
- @param aSource The resource to be drawn.
- @param aRotation The rotation to be applied to the resource before it is drawn. The default value is CWindowGc::EGraphicsRotationNone.
-
- @pre Drawing context has been activated on a window. The drawable source has been created.
- @post Request to draw resource has been accepted. There is no guarantee that the request has been completed
- when this method returns.
- */
- virtual void DrawResource(const TPoint& aPos, const RWsDrawableSource& aSource, CWindowGc::TGraphicsRotation aRotation=CWindowGc::EGraphicsRotationNone) = 0;
-
- /**
- Draws an image based resource. The resource will be rendered to the given destination rectangle on
- the window in its original dimensions with orientation according to the specified rotation parameter.
- Drawing will be clipped to the given destination rectangle. The current clipping region applies. The resource can be
- drawn rotated using the CWindowGc::TGraphicsRotation enum which defines possible rotation values in
- clockwise degrees.
-
- @see RWsDrawableSource
-
- @param aDestRect Destination rectangle to which the resource will be rendered.
- @param aSource The resource to be drawn.
- @param aRotation The rotation to be applied to the resource before it is drawn. The default value is CWindowGc::EGraphicsRotationNone.
-
- @pre Drawing context has been activated on a window. The drawable source has been created.
- @post Request to draw resource has been accepted. There is no guarantee that the request has been completed
- when this method returns.
- */
- virtual void DrawResource(const TRect& aDestRect, const RWsDrawableSource& aSource, CWindowGc::TGraphicsRotation aRotation=CWindowGc::EGraphicsRotationNone) = 0;
-
- /**
- Draws an image based resource. The resource is rendered into the given destination rectangle on a window.
- Scaling (stretching or compression) applies if the destination rectangle is different from the
- source rectangle. The resource orientation is set based on the specified rotation parameter
- before scaling and drawing operations are performed.
-
- @see RWsDrawableSource
-
- @param aDestRect The destination rectangle to which the resource will be rendered on a window.
- @param aSource The resource to draw.
- @param aSrcRect The source rectangle specifying the area/sub-area of the resource to be rendered.
- @param aRotation Rotation to be applied to the resource before it is drawn. The default value is CWindowGc::EGraphicsRotationNone.
-
- @pre Drawing context has been activated on a window. The drawable source has been created.
- @post Request to draw an image based resource has been accepted. There is no guarantee that the
- request has been completed when this method returns.
- */
- virtual void DrawResource(const TRect& aDestRect, const RWsDrawableSource& aSource, const TRect& aSrcRect, CWindowGc::TGraphicsRotation aRotation=CWindowGc::EGraphicsRotationNone) = 0;
-
- /**
- Draws a non-image based resource. The resource will be rendered into the given destination rectangle on a window.
- The current clipping region applies. The adaptation is free to interpret the parameter aParam and may define
- its own rules on how to handle the rendering of a non-image based resource.
-
- @see RWsDrawableSource
-
- @param aDestRect The destination rectangle to which the resource will be rendered on a window.
- @param aSource The resource.
- @param aParam Parameters specifying how to draw the resource.
-
- @pre Drawing context has been activated on a window. The drawable source has been created.
- @post Request to draw a non-image based resource has been accepted.
- There is no guarantee that the request has been completed when this method returns.
- */
- virtual void DrawResource(const TRect& aDestRect, const RWsDrawableSource& aSource, const TDesC8& aParam) = 0;
- };
-
-
-/**
-The intention of this class is to enable drawing of drawables (RSgDrawable and RSgImage)
-using CWindowGc and CRemoteGc.
-
-You have to use the extension interface MWsDrawResource in order to use this class with
-CWindowGc and CRemoteGc.
-
-@publishedPartner
-@prototype
-@see RSgDrawable
-@see RSgImage
-@see MWsDrawResource
-*/
-class RWsDrawableSource : public MWsClientClass
- {
-public:
- IMPORT_C RWsDrawableSource();
- IMPORT_C RWsDrawableSource(RWsSession& aWs);
- IMPORT_C TInt Create(const RSgDrawable& aDrawable);
- IMPORT_C TInt Create(const RSgDrawable& aDrawable, TInt aScreenNumber);
- IMPORT_C const TSgDrawableId& DrawableId() const;
- IMPORT_C TInt ScreenNumber() const;
- IMPORT_C void Close();
-private:
- TSgDrawableId iDrawableId;
- TInt iScreenNumber;
- TInt iReserved; // reserved for use by Symbian
- };
-
-#endif //__WSDRAWRESOURCE_H__
-