os/mm/mmlibs/mmfw/tsrc/mmvalidationsuite/mmvalidationsuiteapp/src/MVSAudioSettingDialog.cpp
Update contrib.
1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // Part of the MVS Application for TechView
18 #include "MVSAudioSettingDialog.h"
22 void CMVSAudioSettingDialog::SetupDialogLD(TInt aNoRepeats,
23 TTimeIntervalMicroSeconds aTrailingSilence,TInt aAudioPriority,
24 TMdaPriorityPreference aPriorityPreference, TInt& aMaxFileBuf,
27 CMVSAudioSettingDialog* dialog = new (ELeave) CMVSAudioSettingDialog(aNoRepeats,
28 aTrailingSilence,aAudioPriority, aPriorityPreference, aMaxFileBuf, aAppUi);
29 dialog->ExecuteLD(R_NEW_MVS_DIALOG_AUDIOSETTING);
32 void CMVSAudioSettingDialog::PreLayoutDynInitL()
34 CEikNumberEditor* repeatControl = static_cast<CEikNumberEditor*>(Control(EMVSCmdSetRepeats));
35 CEikNumberEditor* myTrSilenceControl = static_cast<CEikNumberEditor*>(Control(EMVSCmdSetTrailingSilence));
36 iMaxFileSizeCtrl = static_cast<CEikNumberEditor*>(Control(EMVSCmdSetMaxFileSizeNum));
40 iMaxFileSizeCtrl->SetNumber(iMaxFileBuf);
44 iMaxFileSizeCtrl->SetNumber(0);
46 //Now seed the controls with appropriate values
49 repeatControl->SetNumber(iNoRepeats);
51 if(myTrSilenceControl)
53 myTrSilenceControl->SetNumber(I64INT(iTrailingSilence.Int64()/1000000));
55 // Get a downcasted pointer to the controls
56 CEikChoiceList* audioPriority = static_cast<CEikChoiceList*>(Control(EMVSCmdSetAudioPriority));
58 CEikChoiceList* audioPriorityPref = static_cast<CEikChoiceList*>(Control(EMVSCmdSetAudioPriorityPreference));
63 //Set the current item based on the argument passed to the object
64 switch (iAudioPriority)
66 case(EMdaPriorityMin):
67 audioPriority->SetCurrentItem(0);
70 case(EMdaPriorityMax):
71 audioPriority->SetCurrentItem(2);
74 case(EMdaPriorityNormal):
76 audioPriority->SetCurrentItem(1);
82 //Set the priority preference based on the argument passed to the object
83 switch (iPriorityPreference)
85 case(EMdaPriorityPreferenceTime):
86 audioPriorityPref->SetCurrentItem(1);
89 case(EMdaPriorityPreferenceQuality):
90 audioPriorityPref->SetCurrentItem(2);
93 case(EMdaPriorityPreferenceTimeAndQuality):
94 audioPriorityPref->SetCurrentItem(3);
97 case(EMdaPriorityPreferenceNone):
99 audioPriorityPref->SetCurrentItem(0);
105 CMVSAudioSettingDialog::CMVSAudioSettingDialog(TInt aNoRepeats,
106 TTimeIntervalMicroSeconds aTrailingSilence,TInt aAudioPriority,
107 TMdaPriorityPreference aPriorityPreference, TInt& aMaxFileBuf,
109 : iAppUi(aAppUi),iAudioPriority(aAudioPriority), iPriorityPreference (aPriorityPreference),
110 iNoRepeats(aNoRepeats),iTrailingSilence(aTrailingSilence), iMaxFileBuf(aMaxFileBuf)
115 TKeyResponse CMVSAudioSettingDialog::OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType)
117 if(aKeyEvent.iCode == EKeyEnter && aType == EEventKeyDown)
119 OkToExitL(EMVSButtonUpdate);
121 else if(aKeyEvent.iCode == EKeyEscape && aType == EEventKeyDown)
123 OkToExitL(EMVSButtonCancel);
125 return CEikDialog::OfferKeyEventL(aKeyEvent,aType);
128 TBool CMVSAudioSettingDialog::OkToExitL(TInt aButtonId)
130 // Get a pointer to the progress bar control.
131 // Downcast the returned CCoeControl* pointer to the correct type.
132 CEikChoiceList* audioPriority = static_cast<CEikChoiceList*>(Control(EMVSCmdSetAudioPriority));
134 CEikChoiceList* audioPriorityPref = static_cast<CEikChoiceList*>(Control(EMVSCmdSetAudioPriorityPreference));
136 iMaxFileBuf = iMaxFileSizeCtrl->Number();
137 iAppUi->SetMaxFileSize(iMaxFileBuf);
138 //Identify current Audio Priority item, and set that
141 switch (audioPriority->CurrentItem())
144 iAudioPriority = EMdaPriorityMin;
148 iAudioPriority = EMdaPriorityNormal;
152 iAudioPriority = EMdaPriorityMax;
156 iAudioPriority = EMdaPriorityNormal;
161 //Now do the same for the Priority Preference.
162 if(audioPriorityPref)
164 switch (audioPriorityPref->CurrentItem())
167 iPriorityPreference = EMdaPriorityPreferenceTime;
171 iPriorityPreference = EMdaPriorityPreferenceQuality;
175 iPriorityPreference = EMdaPriorityPreferenceTimeAndQuality;
180 iPriorityPreference = EMdaPriorityPreferenceNone;
184 iNoRepeats = static_cast<CEikNumberEditor*>
185 (Control(EMVSCmdSetRepeats))->Number();
187 //Update the trailing silence from the control.
188 TInt64 silence64 = (static_cast<CEikNumberEditor*>
189 (Control(EMVSCmdSetTrailingSilence))->Number());
190 TInt silence = I64INT(silence64*1000000);
191 TTimeIntervalMicroSeconds theSilence(silence);
195 case(EMVSButtonUpdate):
196 iAppUi->SetPriorityL(iAudioPriority, iPriorityPreference);
197 iAppUi->SetRepeats(iNoRepeats, theSilence);
200 case(EMVSButtonCancel):