diff --git a/bindings/android-sdk/android_bindings_generator.lpi b/bindings/android-sdk/android_bindings_generator.lpi index 5f6647187..59aae8dde 100644 --- a/bindings/android-sdk/android_bindings_generator.lpi +++ b/bindings/android-sdk/android_bindings_generator.lpi @@ -48,7 +48,7 @@ - + @@ -59,9 +59,9 @@ - - - + + + @@ -117,12 +117,11 @@ - - - - + + + @@ -201,9 +200,9 @@ - - - + + + @@ -230,7 +229,7 @@ - + @@ -244,11 +243,12 @@ + - - - + + + @@ -256,9 +256,9 @@ - - - + + + @@ -270,123 +270,127 @@ - + - - + + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - - - - - - + + - - + + + + + + - + - + - + - + - + - - + + - + - + - + - + - - + + + + + + diff --git a/bindings/android-sdk/android_sdk_bindings_gen.pas b/bindings/android-sdk/android_sdk_bindings_gen.pas index f5a7c6b9b..d490ff92a 100644 --- a/bindings/android-sdk/android_sdk_bindings_gen.pas +++ b/bindings/android-sdk/android_sdk_bindings_gen.pas @@ -185,6 +185,7 @@ begin ADest.Add(' float lResult_float;'); ADest.Add(' int lResult_int;'); ADest.Add(' boolean lResult_boolean;'); + ADest.Add(' CharSequence lResult_CharSequence;'); ADest.Add(' Display lResult_Display;'); ADest.Add(''); ADest.Add(' switch (Buffer)'); @@ -452,6 +453,11 @@ begin TmpStr := TmpStr + ');'; FPasOutputImpl.Add(' vAndroidPipesComm.WaitForReturn();'); end + else if (lMethodReturn = 'CharSequence') or (lMethodReturn = 'String') then + begin + TmpStr := TmpStr + '): ' + lMethodReturnPas + ';'; + FPasOutputImpl.Add(' Result := vAndroidPipesComm.WaitForStringReturn();'); + end else begin TmpStr := TmpStr + '): ' + lMethodReturnPas + ';'; @@ -487,7 +493,7 @@ begin else begin FJavaOutputMethods.Add(' lResult_' + lMethodReturn + ' = ' + lJavaParamSelf + '.' + lMethodName + '(' + lJavaParams + ');'); - if IsBasicJavaType(lMethodReturn) then + if IsBasicJavaType(lMethodReturn) or (lMethodReturn = 'CharSequence') or (lMethodReturn = 'String') then FJavaOutputMethods.Add(' MyAndroidPipesComm.' + GetJavaResultFunction(lMethodReturn) + '(lResult_' + lMethodReturn + ');') else begin @@ -808,8 +814,9 @@ end; function TAndroidSDKBindingsGen.GetJavaResultFunction(AReturnType: string ): string; begin - if AReturnType = 'boolean' then Result := 'SendBoolResult' - else if AReturnType = 'float' then Result := 'SendFloatResult' + if AReturnType = 'boolean' then Result := 'SendBoolResult' + else if AReturnType = 'float' then Result := 'SendFloatResult' + else if (AReturnType = 'CharSequence') or (AReturnType = 'String') then Result := 'SendStringResult' else Result := 'SendIntResult'; end; diff --git a/bindings/android-sdk/mainform.lfm b/bindings/android-sdk/mainform.lfm index 4f2a96bd9..820e02ac4 100644 --- a/bindings/android-sdk/mainform.lfm +++ b/bindings/android-sdk/mainform.lfm @@ -2,19 +2,11 @@ object Form1: TForm1 Left = 479 Height = 414 Top = 137 - Width = 434 + Width = 433 Caption = 'Android Bindings Generator' ClientHeight = 414 - ClientWidth = 434 + ClientWidth = 433 LCLVersion = '0.9.31' - object Label1: TLabel - Left = 8 - Height = 18 - Top = 8 - Width = 43 - Caption = 'Label1' - ParentColor = False - end object editInputPath: TDirectoryEdit Left = 88 Height = 25 diff --git a/bindings/android-sdk/mainform.pas b/bindings/android-sdk/mainform.pas index b175cb040..e998bc144 100644 --- a/bindings/android-sdk/mainform.pas +++ b/bindings/android-sdk/mainform.pas @@ -16,7 +16,6 @@ type Button1: TButton; Button2: TButton; editInputPath: TDirectoryEdit; - Label1: TLabel; Label2: TLabel; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); diff --git a/bindings/android-sdk/sdk_level_7/android_all.txt b/bindings/android-sdk/sdk_level_7/android_all.txt index c21e7c7c0..f1a27229b 100644 --- a/bindings/android-sdk/sdk_level_7/android_all.txt +++ b/bindings/android-sdk/sdk_level_7/android_all.txt @@ -73,6 +73,7 @@ constructor Create(Activity); virtual; method void setText(CharSequence AText); virtual; callbacksettercaller setOnClickListener callOnClickListener OnClickListener = procedure (v: TView) of object; method void setTextSize(int unit_; float size); +method CharSequence getText() [EditText] TextView constructor Create(Activity); override;