javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/swttextextension.cpp
branchRCL_3
changeset 19 71c436fe3ce0
parent 14 04becd199f91
child 24 6c158198356e
equal deleted inserted replaced
18:9ac0a0a7da70 19:71c436fe3ce0
   152 {
   152 {
   153     iTypeStyle=aTypeStyle;
   153     iTypeStyle=aTypeStyle;
   154 
   154 
   155     TInt sct = R_AVKON_URL_SPECIAL_CHARACTER_TABLE_DIALOG;
   155     TInt sct = R_AVKON_URL_SPECIAL_CHARACTER_TABLE_DIALOG;
   156     TUint flags = 0;
   156     TUint flags = 0;
       
   157     CEikEdwin& edwin = Editor();
   157     if (iTypeStyle & EEmailAddress)
   158     if (iTypeStyle & EEmailAddress)
   158     {
   159     {
   159         iMenu = CSwtControlMenu::NewL(iDisplay, NULL, 0);
   160         iMenu = CSwtControlMenu::NewL(iDisplay, NULL, 0);
   160         iMenu->SetObserver(this);
   161         iMenu->SetObserver(this);
   161         iMenuItem = CSwtMenuItem::NewL(iDisplay, NULL, *iMenu, 0, 0, ESwtFetchEmail);
   162         iMenuItem = CSwtMenuItem::NewL(iDisplay, NULL, *iMenu, 0, 0, ESwtFetchEmail);
   162         // Email style implementation
   163         // Email style implementation
   163         Editor().SetMaxLength(KSWTTEXTEXTENSION_EMAIL_LENGTH);
   164         edwin.SetMaxLength(KSWTTEXTEXTENSION_EMAIL_LENGTH);
   164         Editor().SetAknEditorAllowedInputModes(EAknEditorAllInputModes);
   165         edwin.SetAknEditorAllowedInputModes(EAknEditorAllInputModes);
   165         Editor().SetAknEditorCurrentInputMode(EAknEditorAlphaInputMode);
   166         edwin.SetAknEditorCurrentInputMode(EAknEditorAlphaInputMode);
   166         Editor().SetAknEditorPermittedCaseModes(EAknEditorAllCaseModes);
   167         edwin.SetAknEditorPermittedCaseModes(EAknEditorAllCaseModes);
   167         Editor().SetAknEditorCase(EAknEditorLowerCase);
   168         edwin.SetAknEditorCase(EAknEditorLowerCase);
   168         Editor().SetAknEditorCurrentCase(EAknEditorLowerCase);
   169         edwin.SetAknEditorCurrentCase(EAknEditorLowerCase);
   169         sct =  R_AVKON_EMAIL_ADDR_SPECIAL_CHARACTER_TABLE_DIALOG;
   170         sct =  R_AVKON_EMAIL_ADDR_SPECIAL_CHARACTER_TABLE_DIALOG;
   170         flags |= EEikEdwinNoLineOrParaBreaks|EAknEditorFlagNoT9;
   171         flags |= EEikEdwinNoLineOrParaBreaks|EAknEditorFlagNoT9;
   171         //Adding Non Midlet Commands
   172         //Adding Non Midlet Commands
   172         HBufC* buffer = iCoeEnv->AllocReadResourceLC(R_EMAIL_COMMAND_TEXT);
   173         HBufC* buffer = iCoeEnv->AllocReadResourceLC(R_EMAIL_COMMAND_TEXT);
   173         TPtrC ptr = buffer->Des();
   174         TPtrC ptr = buffer->Des();
   178     {
   179     {
   179         iMenu = CSwtControlMenu::NewL(iDisplay, NULL, 0);
   180         iMenu = CSwtControlMenu::NewL(iDisplay, NULL, 0);
   180         iMenu->SetObserver(this);
   181         iMenu->SetObserver(this);
   181         iMenuItem = CSwtMenuItem::NewL(iDisplay, NULL, *iMenu, 0, 0, ESwtFetchUrl);
   182         iMenuItem = CSwtMenuItem::NewL(iDisplay, NULL, *iMenu, 0, 0, ESwtFetchUrl);
   182         // Url type implementation
   183         // Url type implementation
   183         Editor().SetMaxLength(KSWTTEXTEXTENSION_URL_LENGTH);
   184         edwin.SetMaxLength(KSWTTEXTEXTENSION_URL_LENGTH);
   184         Editor().SetAknEditorAllowedInputModes(EAknEditorAllInputModes);
   185         edwin.SetAknEditorAllowedInputModes(EAknEditorAllInputModes);
   185         Editor().SetAknEditorCurrentInputMode(EAknEditorAlphaInputMode);
   186         edwin.SetAknEditorCurrentInputMode(EAknEditorAlphaInputMode);
   186         Editor().SetAknEditorPermittedCaseModes(EAknEditorAllCaseModes);
   187         edwin.SetAknEditorPermittedCaseModes(EAknEditorAllCaseModes);
   187         Editor().SetAknEditorCase(EAknEditorLowerCase);
   188         edwin.SetAknEditorCase(EAknEditorLowerCase);
   188         Editor().SetAknEditorCurrentCase(EAknEditorLowerCase);
   189         edwin.SetAknEditorCurrentCase(EAknEditorLowerCase);
   189         sct = R_AVKON_URL_SPECIAL_CHARACTER_TABLE_DIALOG;
   190         sct = R_AVKON_URL_SPECIAL_CHARACTER_TABLE_DIALOG;
   190         flags |= EEikEdwinNoLineOrParaBreaks|EAknEditorFlagNoT9;
   191         flags |= EEikEdwinNoLineOrParaBreaks|EAknEditorFlagNoT9;
   191         //Adding Non Midlet Commands
   192         //Adding Non Midlet Commands
   192         HBufC* buffer = iCoeEnv->AllocReadResourceLC(R_URL_COMMAND_TEXT);
   193         HBufC* buffer = iCoeEnv->AllocReadResourceLC(R_URL_COMMAND_TEXT);
   193         TPtrC ptr = buffer->Des();
   194         TPtrC ptr = buffer->Des();
   204     if (iTypeStyle & ENonPredictive)
   205     if (iTypeStyle & ENonPredictive)
   205     {
   206     {
   206         //NonPredictive type implementation
   207         //NonPredictive type implementation
   207         flags |= EAknEditorFlagNoT9;
   208         flags |= EAknEditorFlagNoT9;
   208     }
   209     }
       
   210 
   209 #ifdef RD_SCALABLE_UI_V2
   211 #ifdef RD_SCALABLE_UI_V2
   210     flags |= EAknEditorFlagDeliverVirtualKeyEventsToApplication;
   212     flags |= EAknEditorFlagDeliverVirtualKeyEventsToApplication;
   211 #endif // RD_SCALABLE_UI_V2 
   213 #endif // RD_SCALABLE_UI_V2 
   212     Editor().SetAknEditorFlags(flags);
   214 
   213     Editor().SetAknEditorSpecialCharacterTable(sct);
   215 #ifdef RD_JAVA_S60_RELEASE_9_2
   214     // make changes take effect
   216     flags |= EAknEditorFlagEnablePartialScreen;
   215     TRAP_IGNORE(Editor().NotifyEditorStateObserverOfStateChangeL());
   217 #endif
       
   218 
       
   219     edwin.SetAknEditorFlags(flags);
       
   220     edwin.SetAknEditorSpecialCharacterTable(sct);
       
   221 
       
   222     TRAP_IGNORE(edwin.NotifyEditorStateObserverOfStateChangeL());
   216 }
   223 }
   217 
   224 
   218 
   225 
   219 // ---------------------------------------------------------------------------
   226 // ---------------------------------------------------------------------------
   220 // Handling non midlet menu commands
   227 // Handling non midlet menu commands