Archived:Enabling and disabling defined key sound using CAknKeySoundSystem
hamishwillee
(Talk | contribs) m (moved CS000951 - Enabling and disabling defined key sound using CAknKeySoundSystem to Enabling and disabling defined key sound using CAknKeySoundSystem over redirect: Merge into wiki.) |
m (Lpvalente -) |
||
| (3 intermediate revisions by one user not shown) | |||
| Line 1: | Line 1: | ||
| − | |||
[[Category:Symbian C++]][[Category:Code Snippet]][[Category:Multimedia]][[Category:Audio]][[Category:S60 3rd Edition (initial release)]][[Category:Code Snippet]] | [[Category:Symbian C++]][[Category:Code Snippet]][[Category:Multimedia]][[Category:Audio]][[Category:S60 3rd Edition (initial release)]][[Category:Code Snippet]] | ||
| + | {{Archived|timestamp=20120313130319|user=roy.debjit| }} | ||
| + | |||
| + | |||
{{ArticleMetaData <!-- v1.2 --> | {{ArticleMetaData <!-- v1.2 --> | ||
|sourcecode= <!-- Link to example source code (e.g. [[Media:The Code Example ZIP.zip]]) --> | |sourcecode= <!-- Link to example source code (e.g. [[Media:The Code Example ZIP.zip]]) --> | ||
| Line 28: | Line 30: | ||
==Overview== | ==Overview== | ||
| − | This code snippet shows how CAknKeySoundSystem is used to enable/disable a defined key sound. EStdKeyDevice3 (the selection key) is used as an example. | + | {{Abstract|This code snippet shows how CAknKeySoundSystem is used to enable/disable a defined key sound. EStdKeyDevice3 (the selection key) is used as an example.}} |
This snippet can be self-signed. | This snippet can be self-signed. | ||
| Line 178: | Line 180: | ||
==See also== | ==See also== | ||
| − | [[ | + | [[Enabling and disabling all key sounds using CAknKeySoundSystem]] |
| − | [[ | + | [[Archived:Using customized key sounds with CAknKeySoundSystem]] |
Latest revision as of 14:12, 17 September 2012
Archived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.
Article Metadata
Tested with
Devices(s): Nokia N93
Compatibility
Platform(s): S60 3rd Edition, FP1
Article
Keywords: CAknKeySoundSystem, CAknAppUi, AVKON_SKEY_LIST, AVKON_SKEY_INFO, CAknAppUi::KeySounds(), CAknKeySoundSystem::PushContextL(), CAknKeySoundSystem::BringToForeground(), CAknKeySoundSystem::LockContext(),CAknKeySoundSystem::PopContext(), CAknKeySoundSystem::ReleaseContext()
Created: aknyman
(09 May 2008)
Last edited: lpvalente
(17 Sep 2012)
Contents |
Overview
This code snippet shows how CAknKeySoundSystem is used to enable/disable a defined key sound. EStdKeyDevice3 (the selection key) is used as an example.
This snippet can be self-signed.
MMP file
The following libraries are required:
LIBRARY avkon.lib
LIBRARY eikcore.lib
LIBRARY eiksrv.lib
Resource file
#include <eikon.rh>
#include <avkon.rsg>
#include <avkon.rh>
#include <e32keys.h> //EStdKeyDevice3
//----------------------------------------------------
// key sound map to disable selection key sound
//----------------------------------------------------
//
RESOURCE AVKON_SKEY_LIST r_silent_select_key_list
{
list=
{
AVKON_SKEY_INFO
{
key = EStdKeyDevice3;
sid = EAvkonSIDNoSound;
},
AVKON_SKEY_INFO
{
key = EStdKeyDevice3;
sid = EAvkonSIDNoSound;
type = ESKeyTypeLong;
},
AVKON_SKEY_INFO
{
key = EStdKeyDevice3;
sid = EAvkonSIDNoSound;
type = ESKeyTypeRepeat;
}
};
}
Header file
#ifndef __TESTERAPPVIEW_H__
#define __TESTERAPPVIEW_H__
// INCLUDES
#include <coecntrl.h>
class CAknKeySoundSystem;
class CTesterAppView : public CCoeControl
{
//...
private:
CAknKeySoundSystem* iSoundSystem;
TBool iSilentSelection;
};
#endif // __TESTERAPPVIEW_H__
Source file
#include <Tester_0xE0060BB5.RSG> //r_silent_select_key_list
#include <aknsoundsystem.h> // CAknKeySoundSystem
#include <aknappui.h>
void CTesterAppView::ConstructL(const TRect& aRect)
{
//...
iSilentSelection = EFalse;
iSoundSystem = static_cast<CAknAppUi*>(
CEikonEnv::Static()->AppUi() )->KeySounds();
if (!iSoundSystem)
{
//pointer to KeySound API object is null
User::Leave(KErrGeneral);
}
}
CTesterAppView::~CTesterAppView()
{
iSoundSystem = NULL;
}
// ---------------------------------------------------------------------------
// Disable selection key sound
// ---------------------------------------------------------------------------
//
void CTesterAppView::DisableSelectionKeySoundL()
{
if ( iSoundSystem && !iSilentSelection )
{
//load key sound map from resources and push it to the context stack
iSoundSystem->PushContextL( R_SILENT_SELECT_KEY_LIST );
//tell server to use this context stack for processing sounds
iSoundSystem->BringToForeground();
//lock this context to the foreground, other BringToForeground() calls
//will be ignored until ReleaseContext() is called
iSoundSystem->LockContext();
iSilentSelection = ETrue;
}
}
// ---------------------------------------------------------------------------
// Enable selection key sound
// ---------------------------------------------------------------------------
//
void CTesterAppView::EnableSelectionKeySound()
{
if ( iSoundSystem && iSilentSelection )
{
//release the locked context
iSoundSystem->ReleaseContext();
//pop the pushed context from the context stack
iSoundSystem->PopContext();
iSilentSelection = EFalse;
}
}
Postconditions
The selection key sound is enabled/disabled by calling methods DisableSelectionKeySoundL() and EnableSelectionKeySound().
See also
Enabling and disabling all key sounds using CAknKeySoundSystem
Archived:Using customized key sounds with CAknKeySoundSystem

