Symbian3/PDK/Source/GUID-3729C075-4958-4874-9DD7-02A68D17E043.dita
changeset 1 25a17d01db0c
child 3 46218c8b8afa
equal deleted inserted replaced
0:89d6a7a84779 1:25a17d01db0c
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-3729C075-4958-4874-9DD7-02A68D17E043" xml:lang="en"><title>Other
       
    13 window server events</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <p> When an event occurs under the window server, the framework calls the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeAppUiClass.html#%3a%3aCCoeAppUi%3a%3aHandleWsEventL%28const%20TWsEvent%20%26amp%3b%2cCCoeControl%20%2a%29" format="application/java-archive"><parmname>HandleWsEventL()</parmname></xref> function of the UI controller
       
    15 object. To implement an event-handling code for a certain event, <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeAppUiClass.html#%3a%3aCCoeAppUi%3a%3aHandleWsEventL%28const%20TWsEvent%20%26amp%3b%2cCCoeControl%20%2a%29" format="application/java-archive"><parmname>HandleWsEventL()</parmname></xref> must be overridden. In
       
    16 order to ensure that the system works correctly, after catching an event in
       
    17 the overridden <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeAppUiClass.html#%3a%3aCCoeAppUi%3a%3aHandleWsEventL%28const%20TWsEvent%20%26amp%3b%2cCCoeControl%20%2a%29" format="application/java-archive"><parmname>HandleWsEventL()</parmname></xref> function the base class
       
    18 implementation should be called. The event type is identified by <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Window_Server/W32STD.HGlobals.html#%3a%3aTEventCode" format="application/java-archive"><parmname>TEventCode</parmname></xref>, which is a data member of the
       
    19 window server event, <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Window_Server/TWsEventClass.html#_top%20title=" format="application/java-archive"><parmname>TWsEvent</parmname></xref>. </p>
       
    20 <codeblock id="GUID-C3C94D39-9BDF-4F89-9DEE-B1078A2AD04E" xml:space="preserve">void HandleWsEventL( const TWsEvent&amp; aEvent, CCoeControl* aDestination )
       
    21 </codeblock>
       
    22 <p> All the event types are defined in the <parmname>w32std.h</parmname> header.</p>
       
    23 <p>Note that some event types are not implemented in the system or are
       
    24 not available for third-party applications. All event codes from <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Window_Server/W32STD.HGlobals.html#%3a%3aTEventCode" format="application/java-archive"><parmname>TEventCode:EEventUser</parmname></xref> upwards can be used
       
    25 for the application-specific events (discussed in <xref href="GUID-95DD1440-01C9-4997-8DD4-FFD33D7DEAFF.dita">Application-specific
       
    26 events</xref>).
       
    27 The following is a code example of the usage of a window server event:</p>
       
    28 <codeblock id="GUID-CF247807-C0BF-4C84-B8DF-8C636F895043" xml:space="preserve">void CMyAppUi::HandleWsEventL( const TWsEvent&amp; aEvent,
       
    29                                CCoeControl* aDestination )
       
    30     {
       
    31     // Call the base class implementation
       
    32     CEikAppUi::HandleWsEventL( aEvent, aDestination );
       
    33     if( aEvent.Type() == EEventKeyDown )
       
    34         {
       
    35         // Do something
       
    36         iEikonEnv-&gt;InfoMsg( _L( “Key was pressed” ) );
       
    37         }
       
    38     }
       
    39 </codeblock>
       
    40 </conbody></concept>