Week 12 contribution of PDK documentation_content. See release notes for details. Fixes Bug 2054, Bug 1583, Bug 381, Bug 390, Bug 463, Bug 1897, Bug 344, Bug 1319, Bug 394, Bug 1520, Bug 1522, Bug 1892"
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License
"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:
-->
<!DOCTYPE concept
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-E3AC8F3E-9D5C-5E7D-9760-023B77C7C8A8" xml:lang="en"><title>Drawing and Graphics Contexts</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>The GDI API provides functions for drawing and filling various shapes (points, lines, polylines, arcs, rectangles, polygons, ellipses, rounded rectangles and pie slices), for drawing text, and for drawing bitmaps. Each drawing operation has a number of settings that affect its function—pen style, fill style, typeface, etc. Instead of passing these settings as parameters to every drawing function, the GDI API has the concept of a <b>graphics context</b> (<b>GC</b>) in which drawing functions are performed. The <codeph>CGraphicsContext</codeph> class is used to hold these settings and to provide all of the graphics functionality. </p> <p>The normal way of performing a drawing operation is therefore: </p> <ol id="GUID-B0F3020B-15C8-5A1E-AA44-9F2CB48A47A2"><li id="GUID-FC43F3A2-AD58-5F89-AD1B-82779741E965"><p>Set up a graphics context to hold the settings. </p> </li> <li id="GUID-0362DF4A-587A-587B-B4CB-689AF11E133D"><p>Call the graphics function of that context to perform the operation. </p> </li> </ol> <p>Graphics contexts are provided by graphics device objects that represents the medium being drawn to. The abstract base class for graphics device objects is <codeph>CGraphicsDevice</codeph>. </p> </conbody><related-links><link href="GUID-1C3455BE-2082-504D-9157-88D8C72B1B80.dita"><linktext>Graphics Device Interface
Concepts</linktext> </link> </related-links></concept>