コード例 #1
0
from rubicon.java import JavaClass, JavaInterface

Button = JavaClass("android/widget/Button")
OnClickListener = JavaInterface("android/view/View$OnClickListener")
RelativeLayout = JavaClass("android/widget/RelativeLayout")
コード例 #2
0
"""
Just a guy with dots and lines
"""
from rubicon.java import JavaClass, JavaInterface
import toga
import toga_android.widgets.base

CustomView = JavaClass('org/beeware/android/CustomView')
IView = JavaInterface('org/beeware/android/IView')
Color = JavaClass("android/graphics/Color")
Paint = JavaClass("android/graphics/Paint")


class PlatformIndependentCanvasWidget:
    @property
    def _impl(self):
        impl = getattr(self, '__impl', None)
        if impl is None:
            self.__impl = CanvasWidget()
        return self.__impl


class CanvasWidget:
    def __init__(self):
        super().__init__()
        self.custom_view = CustomView(
            toga_android.widgets.base._get_activity().getApplicationContext())
        self.custom_view.setView(MicroCustomCanvasView())

    @property
    def native(self):
コード例 #3
0
ファイル: widget.py プロジェクト: obulat/toga
from rubicon.java import JavaClass, JavaInterface

ArrayAdapter = JavaClass("android/widget/ArrayAdapter")
# `ArrayAdapter` can also be typecast into a `SpinnerAdapter`.
# This is required until `rubicon-java` explores the interfaces
# implemented by a class's subclasses.
ArrayAdapter._alternates.append(b'Landroid/widget/SpinnerAdapter;')

Button = JavaClass("android/widget/Button")
CompoundButton__OnCheckedChangeListener = JavaInterface(
    "android/widget/CompoundButton$OnCheckedChangeListener")
EditText = JavaClass("android/widget/EditText")
HorizontalScrollView = JavaClass("android/widget/HorizontalScrollView")
ImageView = JavaClass("android/widget/ImageView")
ImageView__ScaleType = JavaClass("android/widget/ImageView$ScaleType")
LinearLayout = JavaClass("android/widget/LinearLayout")
LinearLayout__LayoutParams = JavaClass(
    "android/widget/LinearLayout$LayoutParams")
NumberPicker = JavaClass("android/widget/NumberPicker")
OnItemSelectedListener = JavaInterface(
    "android/widget/AdapterView$OnItemSelectedListener")
RelativeLayout = JavaClass("android/widget/RelativeLayout")
RelativeLayout__LayoutParams = JavaClass(
    "android/widget/RelativeLayout$LayoutParams")
ScrollView = JavaClass("android/widget/ScrollView")
SeekBar = JavaClass("android/widget/SeekBar")
SeekBar__OnSeekBarChangeListener = JavaInterface(
    "android/widget/SeekBar$OnSeekBarChangeListener")
Switch = JavaClass("android/widget/Switch")
Spinner = JavaClass("android/widget/Spinner")
TableLayout = JavaClass("android/widget/TableLayout")
コード例 #4
0
    print("Current time in current time zone")
    print(">>> datetime.datetime.now().isoformat()")
    print(now.isoformat())
    utcnow = datetime.datetime.utcnow()
    print("Current time in UTC")
    print(">>> datetime.datetime.utcnow().isoformat()")
    print(utcnow.isoformat())


def run_demo_code():
    print_now()
    print_int_list()
    print_beeware_members()


OnClickListener = JavaInterface("android/view/View$OnClickListener")
IPythonApp = JavaInterface("org/asheesh/beeware/pythonstubsapp/IPythonApp")
Button = JavaClass("android/widget/Button")
RelativeLayout = JavaClass("android/widget/RelativeLayout")
RelativeLayout__LayoutParams = JavaClass(
    "android/widget/RelativeLayout$LayoutParams")
ScrollView = JavaClass("android/widget/ScrollView")
View__MeasureSpec = JavaClass("android/view/View$MeasureSpec")


class OnClickRunDemoCode(OnClickListener):
    def onClick(self, _view):
        run_demo_code()


class Application(IPythonApp):
コード例 #5
0

class SelectorMinusSelect(selectors.PollSelector):
    # This class removes the `select()` method from PollSelector. On Android,
    # this would be an error -- it would result in the app freezing, triggering
    # an App Not Responding pop-up from the platform, and the user killing
    # the app.
    #
    # Instead, the AndroidEventLoop cooperates with the native Android event
    # loop to be woken up to get work done as needed.
    def select(self, *args, **kwargs):
        raise NotImplementedError(
            "SelectorMinusSelect refuses to select(); see comments.")


Runnable = JavaInterface("java/lang/Runnable")


class AndroidEventLoop(asyncio.SelectorEventLoop):
    def _android_call_later(self, runnable, timeout_millis):
        print("Doing call_later on", self, runnable, timeout_millis)
        self._handler.postDelayed(runnable, timeout_millis)

    def _add_callback(self, handle):
        # Do the work that `SelectorEventLoop` would do, but also ask the event loop to run.
        ret = super()._add_callback(handle)
        self._android_call_later(
            self._runnables["_run_event_loop_once_cooperatively"], 0)
        return ret

    def _call_soon(self, callback, args, context):
コード例 #6
0
from rubicon.java import JavaClass, JavaInterface

ArrayAdapter = JavaClass("android/widget/ArrayAdapter")
Button = JavaClass("android/widget/Button")
AlertDialog__Builder = JavaClass("android/app/AlertDialog$Builder")
BitmapFactory = JavaClass("android/graphics/BitmapFactory")
CompoundButton__OnCheckedChangeListener = JavaInterface(
    "android/widget/CompoundButton$OnCheckedChangeListener")
DialogInterface__OnClickListener = JavaInterface(
    "android/content/DialogInterface$OnClickListener")
EditText = JavaClass("android/widget/EditText")
Gravity = JavaClass("android/view/Gravity")
ImageView = JavaClass("android/widget/ImageView")
ImageView__ScaleType = JavaClass("android/widget/ImageView$ScaleType")
InputType = JavaClass("android/text/InputType")
LinearLayout = JavaClass("android/widget/LinearLayout")
LinearLayout__LayoutParams = JavaClass(
    "android/widget/LinearLayout$LayoutParams")
NumberPicker = JavaClass("android/widget/NumberPicker")
OnClickListener = JavaInterface("android/view/View$OnClickListener")
OnItemSelectedListener = JavaInterface(
    "android/widget/AdapterView$OnItemSelectedListener")
R__attr = JavaClass("android/R$attr")
R__color = JavaClass("android/R$color")
R__drawable = JavaClass("android/R$drawable")
R__layout = JavaClass("android/R$layout")
RelativeLayout = JavaClass("android/widget/RelativeLayout")
RelativeLayout__LayoutParams = JavaClass(
    "android/widget/RelativeLayout$LayoutParams")
ScrollView = JavaClass("android/widget/ScrollView")
SeekBar = JavaClass("android/widget/SeekBar")
コード例 #7
0
ファイル: activity.py プロジェクト: ztangaj/toga
from rubicon.java import JavaClass, JavaInterface

# The Android cookiecutter template creates an app whose main Activity is
# called `MainActivity`. The activity assumes that we will store a reference
# to an implementation/subclass of `IPythonApp` in it.
MainActivity = JavaClass('org/beeware/android/MainActivity')

# The `IPythonApp` interface in Java allows Python code to
# run on Android activity lifecycle hooks such as `onCreate()`.
IPythonApp = JavaInterface('org/beeware/android/IPythonApp')
コード例 #8
0
ファイル: minecraft.py プロジェクト: NylonMC/nylonmc-content
from rubicon.java import JavaClass, JavaInterface

Identifier = JavaClass("io/github/nylonmc/content/wrapper/IdentifierWrapper")
_ItemWrapper = JavaClass("io/github/nylonmc/content/wrapper/ItemWrapper")
_IItem = JavaInterface("io/github/nylonmc/content/interfaces/IItem")


class Item(_IItem):
    _settings = None

    def __init__(self, settings):
        super().__init__()
        self._settings = settings

    def onUse(self, world, user, hand, return_value):
        #Equivelent To Item.use
        pass

    def getSettings(self, return_value):
        return_value.set(self._settings)


ItemSettings = JavaClass("io/github/nylonmc/content/proxy/ItemSettingsProxy")
_ItemGroupsClass = JavaClass("io/github/nylonmc/content/proxy/ItemGroupProxy")
ItemGroups = _ItemGroupsClass()
_JRegistryClass = JavaClass("io/github/nylonmc/content/proxy/RegistryProxy")
_JRegistry = _JRegistryClass()
_id_to_iitem = dict()
_id_to_item_wrapper = dict()

コード例 #9
0
from rubicon.java import JavaClass, JavaInterface

MotionEvent = JavaClass("android/view/MotionEvent")
View__OnTouchListener = JavaInterface("android/view/View$OnTouchListener")
コード例 #10
0
    print("Current time in current time zone")
    print(">>> datetime.datetime.now().isoformat()")
    print(now.isoformat())
    utcnow = datetime.datetime.utcnow()
    print("Current time in UTC")
    print(">>> datetime.datetime.utcnow().isoformat()")
    print(utcnow.isoformat())


def run_demo_code():
    print_now()
    print_int_list()
    print_beeware_members()


OnClickListener = JavaInterface("android/view/View$OnClickListener")
IPythonApp = JavaInterface("org/beeware/android/IPythonApp")

Button = JavaClass("android/widget/Button")
LinearLayout = JavaClass("android/widget/LinearLayout")


class OnClickRunDemoCode(OnClickListener):
    def onClick(self, _view):
        run_demo_code()


class Application(IPythonApp):
    def onCreate(self):
        print("called Python onCreate method")
コード例 #11
0
from rubicon.java import JavaClass, JavaInterface

ArrayAdapter = JavaClass("android/widget/ArrayAdapter")
Button = JavaClass("android/widget/Button")
AlertDialog__Builder = JavaClass("android/app/AlertDialog$Builder")
BitmapFactory = JavaClass("android/graphics/BitmapFactory")
DialogInterface__OnClickListener = JavaInterface(
    "android/content/DialogInterface$OnClickListener")
EditText = JavaClass("android/widget/EditText")
Gravity = JavaClass("android/view/Gravity")
ImageView = JavaClass("android/widget/ImageView")
InputType = JavaClass("android/text/InputType")
NumberPicker = JavaClass("android/widget/NumberPicker")
OnClickListener = JavaInterface("android/view/View$OnClickListener")
OnItemSelectedListener = JavaInterface(
    "android/widget/AdapterView$OnItemSelectedListener")
R__layout = JavaClass("android/R$layout")
RelativeLayout = JavaClass("android/widget/RelativeLayout")
RelativeLayout__LayoutParams = JavaClass(
    "android/widget/RelativeLayout$LayoutParams")
ScrollView = JavaClass("android/widget/ScrollView")
Spinner = JavaClass("android/widget/Spinner")
TextView = JavaClass("android/widget/TextView")
TextWatcher = JavaInterface("android/text/TextWatcher")
ViewGroup__LayoutParams = JavaClass("android/view/ViewGroup$LayoutParams")
View__MeasureSpec = JavaClass("android/view/View$MeasureSpec")

# Indicate to `rubicon-java` that `ArrayAdapter` can also be typecast into a
# `SpinnerAdapter`. This is required until `rubicon-java` explores the interfaces
# implemented by a class's subclasses.
ArrayAdapter._alternates.append(b'Landroid/widget/SpinnerAdapter;')
コード例 #12
0
ファイル: webkit.py プロジェクト: obulat/toga
from rubicon.java import JavaClass, JavaInterface

ValueCallback = JavaInterface("android/webkit/ValueCallback")
WebView = JavaClass("android/webkit/WebView")
WebViewClient = JavaClass("android/webkit/WebViewClient")
コード例 #13
0
ファイル: __init__.py プロジェクト: NylonMC/nylonmc-content
from rubicon.java import JavaClass, JavaInterface

_NylonClientCommands = JavaClass(
    "io/github/nylonmc/content/NylonClientCommands")


def register(builder):
    _NylonClientCommands.register(builder)


ArgumentBuilders = JavaClass(
    "io/github/cottonmc/clientcommands/ArgumentBuilders")
Command = JavaInterface("com/mojang/brigadier/Command")
コード例 #14
0
ファイル: swiperefreshlayout.py プロジェクト: obulat/toga
from rubicon.java import JavaClass, JavaInterface

SwipeRefreshLayout = JavaClass(
    "androidx/swiperefreshlayout/widget/SwipeRefreshLayout")
SwipeRefreshLayout__OnRefreshListener = JavaInterface(
    "androidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnRefreshListener")
コード例 #15
0
ファイル: text.py プロジェクト: obulat/toga
from rubicon.java import JavaClass, JavaInterface

InputType = JavaClass("android/text/InputType")
TextWatcher = JavaInterface("android/text/TextWatcher")