Symbian3/SDK/Source/GUID-BBBA5C6C-4E8B-513A-8FA1-C7A04C54C140.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 11 Jun 2010 12:39:03 +0100
changeset 8 ae94777fff8f
parent 7 51a74ef9ed63
child 13 48780e181b38
permissions -rw-r--r--
Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.

<?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-BBBA5C6C-4E8B-513A-8FA1-C7A04C54C140" xml:lang="en"><title>Clipboard</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>The Symbian platform supports the concept of cut, copy and
paste by providing a clipboard. An application can copy data to the clipboard
and the same data can then be pasted in by the same application or by any
other application. </p>
<p>The clipboard is a resource which is shared by all applications. An application
must, therefore, hold the clipboard for the minimum time possible. </p>
<section id="GUID-848D26F4-3875-4BF7-AAEC-476F709B9E6E"><title>Cut, copy and paste</title> <p>The clipboard is encapsulated
by the <codeph>CClipboard</codeph> class. Applications use this class when
they place data on, or retrieve data from the clipboard. </p> <p>It is implemented
as a direct file store. When the data is placed on the clipboard, it is stored
in the clipboard's store as a stream or a network of streams. Every data type
placed on the clipboard is identified by a UID. This allows a pasting application
to identify the required data. </p> <p>It uses a stream dictionary to maintain
UID and stream ID pairs, and always makes the stream dictionary the root stream
of the store. </p> <p>The essential features of the <codeph>CClipboard</codeph> class
are shown in the following diagram: </p> <fig id="GUID-22419444-933C-5431-9717-CD332A17FCF2">
<title>              Clipboard class structure            </title>
<image href="GUID-15591211-58D3-56B6-868F-D34C30ED7A7A_d0e176040_href.png" placement="inline"/>
</fig> <p>Any type of data can be placed on the clipboard. When retrieving
data, applications check the UID in the stream dictionary to determine whether
there is any data relevant to them. The following diagram illustrates a typical
situation: </p> <fig id="GUID-3ABDDCDD-DBC9-5BD5-8448-8249F535FB06">
<title>              Clipboard store            </title>
<image href="GUID-F5B58B20-B85C-5BCD-B1EB-69CCE42DE6BB_d0e176051_href.png" placement="inline"/>
</fig> </section>
</conbody><related-links>
<link href="GUID-8C94EE15-82EA-4A95-9044-C3404F95BD51.dita"><linktext>Using Clipboard</linktext>
</link>
<link href="GUID-B683496C-652E-5F48-924E-52D2FF3A78A7.dita"><linktext>Direct file
stores</linktext></link>
<link href="GUID-79F39C97-75E8-5DB1-B976-8FE76E6E60C9.dita"><linktext>Dictionary
stores</linktext></link>
<link href="GUID-AB705D21-87A3-5F32-A4B9-17B7593DD5C3.dita"><linktext>UID manipulation</linktext>
</link>
</related-links></concept>