00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #include <eikmenub.h>
00011 #include <akncontext.h>
00012 #include <akntitle.h>
00013 #include <ExeLauncher_S60.rsg>
00014
00015
00016
00017 #include "ExeLauncher_S60AppUi.h"
00018 #include "ExeLauncher_S60.hrh"
00019 #include "ExeLauncher_S60ContainerView.h"
00020
00021
00022
00023
00024
00028 CExeLauncher_S60AppUi::CExeLauncher_S60AppUi()
00029 {
00030
00031
00032
00033 }
00034
00039 CExeLauncher_S60AppUi::~CExeLauncher_S60AppUi()
00040 {
00041
00042
00043
00044 }
00045
00046
00047 void CExeLauncher_S60AppUi::InitializeContainersL()
00048 {
00049 iExeLauncher_S60ContainerView = CExeLauncher_S60ContainerView::NewL();
00050 AddViewL( iExeLauncher_S60ContainerView );
00051 SetDefaultViewL( *iExeLauncher_S60ContainerView );
00052 }
00053
00054
00059 void CExeLauncher_S60AppUi::HandleCommandL( TInt aCommand )
00060 {
00061
00062 TBool commandHandled = EFalse;
00063 switch ( aCommand )
00064 {
00065 default:
00066 break;
00067 }
00068
00069
00070 if ( !commandHandled )
00071 {
00072 if ( aCommand == EAknSoftkeyExit || aCommand == EEikCmdExit )
00073 {
00074 Exit();
00075 }
00076 }
00077
00078
00079 }
00080
00084 void CExeLauncher_S60AppUi::HandleResourceChangeL( TInt aType )
00085 {
00086 CAknViewAppUi::HandleResourceChangeL( aType );
00087
00088
00089
00090 }
00091
00098 TKeyResponse CExeLauncher_S60AppUi::HandleKeyEventL(
00099 const TKeyEvent& aKeyEvent,
00100 TEventCode aType )
00101 {
00102
00103
00104
00105
00106 return EKeyWasNotConsumed;
00107 }
00108
00115 void CExeLauncher_S60AppUi::HandleViewDeactivation(
00116 const TVwsViewId& aViewIdToBeDeactivated,
00117 const TVwsViewId& aNewlyActivatedViewId )
00118 {
00119 CAknViewAppUi::HandleViewDeactivation(
00120 aViewIdToBeDeactivated,
00121 aNewlyActivatedViewId );
00122
00123
00124
00125 }
00126
00131 void CExeLauncher_S60AppUi::ConstructL()
00132 {
00133 _LIT(KTestCodeFileName,"NotifierTestConsole.exe");
00134 _LIT(KNullDesc,"");
00135
00136 BaseConstructL( EAknEnableSkin );
00137
00138 RProcess testexe;
00139 TInt err= testexe.Create(KTestCodeFileName, KNullDesc);
00140 if (err==KErrNone)
00141 {
00142 TRequestStatus stat;
00143 testexe.Rendezvous(stat);
00144 if (stat!=KRequestPending)
00145 testexe.Kill(0);
00146 else
00147 testexe.Resume();
00148 User::WaitForRequest(stat);
00149 testexe.Close();
00150 }
00151
00152 Exit();
00153 InitializeContainersL();
00154
00155
00156 }
00157