421bd1f27ad42c0ef2baaa9feded0f97c7695c95
[nit.git] / examples / calculator / src / android21 / android21.nit
1 # This file is part of NIT ( http://www.nitlanguage.org ).
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 # Aesthetic adaptations for Android Lollypop (API 21)
16 module android21 is
17 android_api_min 21
18 android_api_target 21
19 android_manifest_activity """android:theme="@style/CalculatorTheme" """
20 app_files
21 end
22
23 import android_calculator
24
25 redef class TextInput
26 init do
27 set_android_style(native, app.native_activity)
28 super
29 end
30
31 # Deactivate the virtual keyboard and set the text style from XML resources
32 private fun set_android_style(java_edit_text: NativeEditText, activity: NativeActivity)
33 in "Java" `{
34 java_edit_text.setShowSoftInputOnFocus(false);
35 java_edit_text.setTextAppearance(activity, R.style.DisplayEditTextStyle);
36 `}
37 end
38
39 redef class Button
40 init do
41 set_text_style(native, app.native_activity)
42 super
43 end
44
45 # Set the text style from XML resources
46 private fun set_text_style(java_button: NativeButton, activity: NativeActivity)
47 in "Java" `{
48 java_button.setTextAppearance(activity, R.style.PadButtonStyle);
49 `}
50 end