Sub SetEditTextInput_Type(bDoCustomKeyboard As Boolean, oEditText As EditText, iKeyBoardType As Int, bHandleAction As Boolean)
'Log("SetEditTextInput_Type, iKeyBoardType: " & iKeyBoardType)
If NativeMe.IsInitialized = False Then
NativeMe.InitializeContext
End If
If bDoCustomKeyboard Then
NativeMe.RunMethod("disableSoftKeyboard", Array As Object(oEditText))
'oEditText.InputType = Bit.Or(oEditText.InputType, 0x00080000)
Else
Select Case iKeyBoardType
Case Enums.eKeyboardStates.LowerCase, Enums.eKeyboardStates.UpperCase, Enums.eKeyboardStates.UpperCaseFixed, _
Enums.eKeyboardStates.Symbols1, Enums.eKeyboardStates.Symbols2
NativeMe.RunMethod("enableSoftKeyboard", Array As Object(oEditText, (1 + 524288)))
Case Enums.eKeyboardStates.Numeric
NativeMe.RunMethod("enableSoftKeyboard", Array As Object(oEditText, 2))
ime.SetCustomFilter(oEditText, oEditText.INPUT_TYPE_NUMBERS, "0123456789")
Case Enums.eKeyboardStates.Decimals
NativeMe.RunMethod("enableSoftKeyboard", Array As Object(oEditText, (2 + 8192)))
ime.SetCustomFilter(oEditText, oEditText.INPUT_TYPE_NUMBERS, "0123456789.")
Case Enums.eKeyboardStates.NumericWithMinus
NativeMe.RunMethod("enableSoftKeyboard", Array As Object(oEditText, (2 + 4096)))
ime.SetCustomFilter(oEditText, oEditText.INPUT_TYPE_NUMBERS, "0123456789-")
Case Enums.eKeyboardStates.DecimalsWithMinus
NativeMe.RunMethod("enableSoftKeyboard", Array As Object(oEditText, (2 + 4096 + 8192)))
ime.SetCustomFilter(oEditText, oEditText.INPUT_TYPE_NUMBERS, "0123456789.-")
End Select
If bHandleAction Then
'will show Next button to handle the action
'will need to specify the action in ime_HandleAction
ime.AddHandleActionEvent(oEditText)
End If
End If
End Sub