├── .git-blame-ignore-revs ├── .github ├── dependabot.yml ├── labels.toml └── workflows │ ├── ci.yml │ ├── config-file-deps-bump.yml │ ├── dependabot-changenote.yml │ ├── pre-commit-update.yml │ ├── publish.yml │ └── release.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .readthedocs.yaml ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── android ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src │ └── toga_android │ │ ├── __init__.py │ │ ├── app.py │ │ ├── colors.py │ │ ├── command.py │ │ ├── container.py │ │ ├── dialogs.py │ │ ├── factory.py │ │ ├── fonts.py │ │ ├── hardware │ │ ├── __init__.py │ │ ├── camera.py │ │ └── location.py │ │ ├── icons.py │ │ ├── images.py │ │ ├── keys.py │ │ ├── libs │ │ ├── __init__.py │ │ └── events.py │ │ ├── paths.py │ │ ├── resources │ │ ├── marker.png │ │ ├── optioncontainer-tab.png │ │ └── toga.png │ │ ├── screens.py │ │ ├── statusicons.py │ │ ├── widgets │ │ ├── __init__.py │ │ ├── base.py │ │ ├── box.py │ │ ├── button.py │ │ ├── canvas.py │ │ ├── dateinput.py │ │ ├── detailedlist.py │ │ ├── divider.py │ │ ├── imageview.py │ │ ├── internal │ │ │ ├── __init__.py │ │ │ └── pickers.py │ │ ├── label.py │ │ ├── mapview.py │ │ ├── multilinetextinput.py │ │ ├── numberinput.py │ │ ├── optioncontainer.py │ │ ├── passwordinput.py │ │ ├── progressbar.py │ │ ├── scrollcontainer.py │ │ ├── selection.py │ │ ├── slider.py │ │ ├── switch.py │ │ ├── table.py │ │ ├── textinput.py │ │ ├── timeinput.py │ │ └── webview.py │ │ └── window.py └── tests_backend │ ├── __init__.py │ ├── app.py │ ├── dialogs.py │ ├── fonts.py │ ├── hardware │ ├── __init__.py │ ├── camera.py │ ├── hardware.py │ └── location.py │ ├── icons.py │ ├── images.py │ ├── probe.py │ ├── screens.py │ ├── widgets │ ├── __init__.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── canvas.py │ ├── dateinput.py │ ├── detailedlist.py │ ├── divider.py │ ├── imageview.py │ ├── label.py │ ├── mapview.py │ ├── multilinetextinput.py │ ├── numberinput.py │ ├── optioncontainer.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── properties.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── slider.py │ ├── switch.py │ ├── table.py │ ├── textinput.py │ ├── timeinput.py │ └── webview.py │ └── window.py ├── changes ├── 2818.bugfix.rst ├── 2841.feature.rst ├── 3138.misc.rst ├── 3334.feature.rst ├── 3358.feature.rst ├── 3399.bugfix.rst ├── 3420.misc.rst ├── 3426.misc.rst ├── 3427.misc.rst ├── 3428.misc.rst ├── 3429.misc.rst ├── 3430.misc.rst ├── 3431.misc.rst ├── 3432.misc.rst ├── 3433.misc.rst ├── 3434.misc.rst ├── 3435.misc.rst ├── 3436.misc.rst ├── 3437.misc.rst ├── 3438.misc.rst ├── 3439.misc.rst ├── 3441.misc.rst ├── 3444.bugfix.rst ├── 3444.misc.rst ├── 3447.misc.rst ├── 3451.bugfix.rst ├── 3452.misc.rst ├── 3453.misc.rst ├── 3454.misc.rst ├── 3455.misc.rst ├── 3456.misc.rst ├── 3457.misc.rst ├── 3458.misc.rst ├── 3459.misc.rst ├── 3460.misc.rst ├── 3461.misc.rst ├── 3462.misc.rst ├── 3463.misc.rst ├── 3464.misc.rst ├── 3465.misc.rst ├── 3472.bugfix.rst ├── 3486.misc.rst ├── 3488.misc.rst ├── 3489.misc.rst ├── 3490.misc.rst ├── 3491.misc.rst ├── 3492.misc.rst ├── 3493.misc.rst ├── 3494.misc.rst ├── 3495.misc.rst ├── 3496.misc.rst ├── 3497.misc.rst ├── 3498.misc.rst ├── 3499.misc.rst ├── 3500.misc.rst ├── 3501.misc.rst ├── 3509.misc.rst ├── 3511.misc.rst ├── 3512.misc.rst ├── 3513.misc.rst ├── 3514.misc.rst ├── 3515.misc.rst ├── 3516.misc.rst ├── 3517.misc.rst ├── 3518.misc.rst ├── 3519.misc.rst ├── 3520.misc.rst ├── 3521.misc.rst ├── 3522.misc.rst └── template.rst ├── cocoa ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src │ └── toga_cocoa │ │ ├── __init__.py │ │ ├── app.py │ │ ├── colors.py │ │ ├── command.py │ │ ├── constraints.py │ │ ├── container.py │ │ ├── dialogs.py │ │ ├── factory.py │ │ ├── fonts.py │ │ ├── hardware │ │ ├── __init__.py │ │ ├── camera.py │ │ └── location.py │ │ ├── icons.py │ │ ├── images.py │ │ ├── keys.py │ │ ├── libs │ │ ├── __init__.py │ │ ├── appkit.py │ │ ├── av_foundation.py │ │ ├── core_graphics.py │ │ ├── core_location.py │ │ ├── core_text.py │ │ ├── foundation.py │ │ ├── mapkit.py │ │ └── webkit.py │ │ ├── paths.py │ │ ├── resources │ │ ├── camera.png │ │ └── toga.icns │ │ ├── screens.py │ │ ├── statusicons.py │ │ ├── widgets │ │ ├── __init__.py │ │ ├── activityindicator.py │ │ ├── base.py │ │ ├── box.py │ │ ├── button.py │ │ ├── canvas.py │ │ ├── detailedlist.py │ │ ├── divider.py │ │ ├── imageview.py │ │ ├── internal │ │ │ ├── __init__.py │ │ │ ├── cells.py │ │ │ ├── data.py │ │ │ └── refresh.py │ │ ├── label.py │ │ ├── mapview.py │ │ ├── multilinetextinput.py │ │ ├── numberinput.py │ │ ├── optioncontainer.py │ │ ├── passwordinput.py │ │ ├── progressbar.py │ │ ├── scrollcontainer.py │ │ ├── selection.py │ │ ├── slider.py │ │ ├── splitcontainer.py │ │ ├── switch.py │ │ ├── table.py │ │ ├── textinput.py │ │ ├── tree.py │ │ └── webview.py │ │ └── window.py └── tests_backend │ ├── __init__.py │ ├── app.py │ ├── dialogs.py │ ├── fonts.py │ ├── hardware │ ├── __init__.py │ ├── camera.py │ └── location.py │ ├── icons.py │ ├── images.py │ ├── probe.py │ ├── screens.py │ ├── widgets │ ├── __init__.py │ ├── activityindicator.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── canvas.py │ ├── detailedlist.py │ ├── divider.py │ ├── imageview.py │ ├── label.py │ ├── mapview.py │ ├── multilinetextinput.py │ ├── numberinput.py │ ├── optioncontainer.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── properties.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── slider.py │ ├── splitcontainer.py │ ├── switch.py │ ├── table.py │ ├── textinput.py │ ├── tree.py │ └── webview.py │ └── window.py ├── core ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src │ └── toga │ │ ├── __init__.py │ │ ├── __init__.pyi │ │ ├── app.py │ │ ├── colors.py │ │ ├── command.py │ │ ├── constants │ │ └── __init__.py │ │ ├── dialogs.py │ │ ├── documents.py │ │ ├── fonts.py │ │ ├── handlers.py │ │ ├── hardware │ │ ├── __init__.py │ │ ├── camera.py │ │ └── location.py │ │ ├── icons.py │ │ ├── images.py │ │ ├── keys.py │ │ ├── paths.py │ │ ├── platform.py │ │ ├── plugins │ │ ├── __init__.py │ │ └── image_formats.py │ │ ├── py.typed │ │ ├── resources │ │ └── __init__.py │ │ ├── screens.py │ │ ├── sources │ │ ├── __init__.py │ │ ├── accessors.py │ │ ├── base.py │ │ ├── list_source.py │ │ ├── tree_source.py │ │ └── value_source.py │ │ ├── statusicons.py │ │ ├── style │ │ ├── __init__.py │ │ ├── applicator.py │ │ ├── mixin.py │ │ └── pack.py │ │ ├── types.py │ │ ├── validators.py │ │ ├── widgets │ │ ├── __init__.py │ │ ├── activityindicator.py │ │ ├── base.py │ │ ├── box.py │ │ ├── button.py │ │ ├── canvas │ │ │ ├── __init__.py │ │ │ ├── canvas.py │ │ │ ├── context.py │ │ │ ├── drawingobject.py │ │ │ └── geometry.py │ │ ├── dateinput.py │ │ ├── detailedlist.py │ │ ├── divider.py │ │ ├── imageview.py │ │ ├── label.py │ │ ├── mapview.py │ │ ├── multilinetextinput.py │ │ ├── numberinput.py │ │ ├── optioncontainer.py │ │ ├── passwordinput.py │ │ ├── progressbar.py │ │ ├── scrollcontainer.py │ │ ├── selection.py │ │ ├── slider.py │ │ ├── splitcontainer.py │ │ ├── switch.py │ │ ├── table.py │ │ ├── textinput.py │ │ ├── timeinput.py │ │ ├── tree.py │ │ └── webview.py │ │ └── window.py └── tests │ ├── __init__.py │ ├── app │ ├── __init__.py │ ├── test_app.py │ ├── test_background_app.py │ ├── test_dialogs.py │ ├── test_document_app.py │ ├── test_documentset.py │ ├── test_screens.py │ ├── test_simpleapp.py │ ├── test_widget_registry.py │ └── test_windowset.py │ ├── command │ ├── __init__.py │ ├── conftest.py │ ├── test_command.py │ ├── test_commandset.py │ └── test_group.py │ ├── conftest.py │ ├── hardware │ ├── __init__.py │ ├── test_camera.py │ └── test_location.py │ ├── resources │ ├── blue.png │ ├── orange.bmp │ ├── orange.png │ ├── photo.png │ ├── red-16.png │ ├── red-32.png │ ├── red-72.png │ ├── red.png │ ├── sample-dummy.png │ ├── sample.png │ └── toga.png │ ├── sources │ ├── __init__.py │ ├── test_accessors.py │ ├── test_list_source.py │ ├── test_node.py │ ├── test_row.py │ ├── test_source.py │ ├── test_tree_source.py │ └── test_value_source.py │ ├── statusicons │ ├── __init__.py │ ├── test_menustatusicon.py │ ├── test_simplestatusicon.py │ └── test_statusiconset.py │ ├── style │ ├── __init__.py │ ├── pack │ │ ├── __init__.py │ │ ├── layout │ │ │ ├── __init__.py │ │ │ ├── test_beeliza.py │ │ │ ├── test_column_alignment.py │ │ │ ├── test_fixed.py │ │ │ ├── test_flex.py │ │ │ ├── test_gap.py │ │ │ ├── test_justify_content.py │ │ │ ├── test_row_alignment.py │ │ │ ├── test_rtl.py │ │ │ ├── test_tutorial0.py │ │ │ ├── test_tutorial1.py │ │ │ └── test_tutorial3.py │ │ ├── test_aliases.py │ │ ├── test_apply.py │ │ ├── test_css.py │ │ ├── test_deprecated_properties.py │ │ └── utils.py │ ├── test_applicator.py │ └── test_mixin.py │ ├── test_documents.py │ ├── test_fonts.py │ ├── test_handlers.py │ ├── test_icons.py │ ├── test_images.py │ ├── test_import.py │ ├── test_keys.py │ ├── test_paths.py │ ├── test_platform.py │ ├── test_types.py │ ├── test_validators.py │ ├── testbed │ ├── customize │ │ └── sitecustomize.py │ ├── interactive.py │ ├── simple │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── subclassed │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ ├── utils.py │ ├── widgets │ ├── __init__.py │ ├── canvas │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_canvas.py │ │ ├── test_context_objects.py │ │ ├── test_draw_operations.py │ │ └── test_helpers.py │ ├── test_activityindicator.py │ ├── test_base.py │ ├── test_box.py │ ├── test_button.py │ ├── test_dateinput.py │ ├── test_detailedlist.py │ ├── test_divider.py │ ├── test_imageview.py │ ├── test_label.py │ ├── test_mapview.py │ ├── test_multilinetextinput.py │ ├── test_numberinput.py │ ├── test_optioncontainer.py │ ├── test_passwordinput.py │ ├── test_progressbar.py │ ├── test_scrollcontainer.py │ ├── test_selection.py │ ├── test_slider.py │ ├── test_splitcontainer.py │ ├── test_switch.py │ ├── test_table.py │ ├── test_textinput.py │ ├── test_timeinput.py │ ├── test_tree.py │ └── test_webview.py │ └── window │ ├── __init__.py │ ├── conftest.py │ ├── test_dialogs.py │ ├── test_document_window.py │ ├── test_filtered_widget_registry.py │ ├── test_main_window.py │ └── test_window.py ├── demo ├── AUTHORS ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml └── toga_demo │ ├── __init__.py │ ├── __main__.py │ ├── app.py │ └── resources │ ├── brutus-32.png │ ├── brutus.icns │ ├── brutus.ico │ ├── toga-demo.icns │ └── toga-demo.ico ├── docs ├── Makefile ├── _static │ └── custom.css ├── background │ ├── community.rst │ ├── index.rst │ ├── internals │ │ ├── architecture.rst │ │ └── index.rst │ └── project │ │ ├── faq.rst │ │ ├── index.rst │ │ ├── philosophy.rst │ │ ├── releases.rst │ │ ├── roadmap.rst │ │ └── success.rst ├── conf.py ├── extra │ └── robots.txt ├── how-to │ ├── contribute │ │ ├── code.rst │ │ ├── docs.rst │ │ └── index.rst │ ├── index.rst │ ├── internal │ │ ├── index.rst │ │ └── release.rst │ └── topics │ │ ├── api-design.rst │ │ ├── data-sources.rst │ │ ├── index.rst │ │ └── layout.rst ├── images │ ├── toga-demo-cocoa.png │ ├── toga-demo-gtk.png │ ├── toga-demo-winforms.png │ └── toga.png ├── index.rst ├── make.bat ├── reference │ ├── api │ │ ├── app.rst │ │ ├── constants.rst │ │ ├── containers │ │ │ ├── box.rst │ │ │ ├── index.rst │ │ │ ├── optioncontainer.rst │ │ │ ├── scrollcontainer.rst │ │ │ └── splitcontainer.rst │ │ ├── documentwindow.rst │ │ ├── hardware │ │ │ ├── camera.rst │ │ │ ├── index.rst │ │ │ ├── location.rst │ │ │ └── screens.rst │ │ ├── index.rst │ │ ├── keys.rst │ │ ├── mainwindow.rst │ │ ├── resources │ │ │ ├── app_paths.rst │ │ │ ├── command.rst │ │ │ ├── dialogs.rst │ │ │ ├── document.rst │ │ │ ├── fonts.rst │ │ │ ├── icons.rst │ │ │ ├── images.rst │ │ │ ├── index.rst │ │ │ ├── sources │ │ │ │ ├── list_source.rst │ │ │ │ ├── source.rst │ │ │ │ ├── tree_source.rst │ │ │ │ └── value_source.rst │ │ │ ├── statusicons.rst │ │ │ └── validators.rst │ │ ├── types.rst │ │ ├── widgets │ │ │ ├── activityindicator.rst │ │ │ ├── button.rst │ │ │ ├── canvas.rst │ │ │ ├── dateinput.rst │ │ │ ├── detailedlist.rst │ │ │ ├── divider.rst │ │ │ ├── imageview.rst │ │ │ ├── index.rst │ │ │ ├── label.rst │ │ │ ├── mapview.rst │ │ │ ├── multilinetextinput.rst │ │ │ ├── numberinput.rst │ │ │ ├── passwordinput.rst │ │ │ ├── progressbar.rst │ │ │ ├── selection.rst │ │ │ ├── slider.rst │ │ │ ├── switch.rst │ │ │ ├── table-accessors.rst │ │ │ ├── table-values.rst │ │ │ ├── table.rst │ │ │ ├── textinput.rst │ │ │ ├── timeinput.rst │ │ │ ├── tree.rst │ │ │ ├── webview.rst │ │ │ └── widget.rst │ │ └── window.rst │ ├── data │ │ └── widgets_by_platform.csv │ ├── images │ │ ├── activityindicator-cocoa.png │ │ ├── activityindicator-gtk.png │ │ ├── activityindicator-iOS.png │ │ ├── button-android.png │ │ ├── button-cocoa.png │ │ ├── button-gtk.png │ │ ├── button-iOS.png │ │ ├── button-web.png │ │ ├── button-winforms.png │ │ ├── canvas-android.png │ │ ├── canvas-cocoa.png │ │ ├── canvas-gtk.png │ │ ├── canvas-iOS.png │ │ ├── canvas-winforms.png │ │ ├── dateinput-android.png │ │ ├── dateinput-web.png │ │ ├── dateinput-winforms.png │ │ ├── detailedlist-android.png │ │ ├── detailedlist-cocoa.png │ │ ├── detailedlist-gtk.png │ │ ├── detailedlist-iOS.png │ │ ├── detailedlist-winforms.png │ │ ├── divider-android.png │ │ ├── divider-cocoa.png │ │ ├── divider-gtk.png │ │ ├── divider-iOS.png │ │ ├── divider-winforms.png │ │ ├── imageview.png │ │ ├── label-android.png │ │ ├── label-cocoa.png │ │ ├── label-gtk.png │ │ ├── label-iOS.png │ │ ├── label-web.png │ │ ├── label-winforms.png │ │ ├── mainwindow-android.png │ │ ├── mainwindow-cocoa.png │ │ ├── mainwindow-gtk.png │ │ ├── mainwindow-iOS.png │ │ ├── mainwindow-winforms.png │ │ ├── mapview-android.png │ │ ├── mapview-cocoa.png │ │ ├── mapview-gtk.png │ │ ├── mapview-iOS.png │ │ ├── mapview-winforms.png │ │ ├── multilinetextinput-android.png │ │ ├── multilinetextinput-cocoa.png │ │ ├── multilinetextinput-gtk.png │ │ ├── multilinetextinput-iOS.png │ │ ├── multilinetextinput-winforms.png │ │ ├── numberinput-android.png │ │ ├── numberinput-cocoa.png │ │ ├── numberinput-gtk.png │ │ ├── numberinput-iOS.png │ │ ├── numberinput-winforms.png │ │ ├── optioncontainer-android.png │ │ ├── optioncontainer-cocoa.png │ │ ├── optioncontainer-gtk.png │ │ ├── optioncontainer-iOS.png │ │ ├── optioncontainer-winforms.png │ │ ├── passwordinput-android.png │ │ ├── passwordinput-cocoa.png │ │ ├── passwordinput-gtk.png │ │ ├── passwordinput-iOS.png │ │ ├── passwordinput-web.png │ │ ├── passwordinput-winforms.png │ │ ├── progressbar-android.png │ │ ├── progressbar-cocoa.png │ │ ├── progressbar-gtk.png │ │ ├── progressbar-iOS.png │ │ ├── progressbar-web.png │ │ ├── progressbar-winforms.png │ │ ├── scrollcontainer-android.png │ │ ├── scrollcontainer-cocoa.png │ │ ├── scrollcontainer-gtk.png │ │ ├── scrollcontainer-iOS.png │ │ ├── scrollcontainer-web.png │ │ ├── scrollcontainer-winforms.png │ │ ├── selection-android.png │ │ ├── selection-cocoa.png │ │ ├── selection-gtk.png │ │ ├── selection-iOS.png │ │ ├── selection-web.png │ │ ├── selection-winforms.png │ │ ├── slider-android.png │ │ ├── slider-cocoa.png │ │ ├── slider-gtk.png │ │ ├── slider-iOS.png │ │ ├── slider-winforms.png │ │ ├── splitcontainer-cocoa.png │ │ ├── splitcontainer-gtk.png │ │ ├── splitcontainer-winforms.png │ │ ├── statusicons-cocoa.png │ │ ├── statusicons-gtk.png │ │ ├── statusicons-winforms.png │ │ ├── switch-android.png │ │ ├── switch-cocoa.png │ │ ├── switch-gtk.png │ │ ├── switch-iOS.png │ │ ├── switch-web.png │ │ ├── switch-winforms.png │ │ ├── table-android.png │ │ ├── table-cocoa.png │ │ ├── table-gtk.png │ │ ├── table-winforms.png │ │ ├── textinput-android.png │ │ ├── textinput-cocoa.png │ │ ├── textinput-gtk.png │ │ ├── textinput-iOS.png │ │ ├── textinput-web.png │ │ ├── textinput-winforms.png │ │ ├── timeinput-android.png │ │ ├── timeinput-web.png │ │ ├── timeinput-winforms.png │ │ ├── tree-cocoa.png │ │ ├── tree-gtk.png │ │ ├── webview-android.png │ │ ├── webview-cocoa.png │ │ ├── webview-gtk.png │ │ ├── webview-iOS.png │ │ ├── webview-winforms.png │ │ ├── window-android.png │ │ ├── window-cocoa.png │ │ ├── window-gtk.png │ │ ├── window-iOS.png │ │ └── window-winforms.png │ ├── index.rst │ ├── platforms │ │ ├── android.rst │ │ ├── iOS.rst │ │ ├── index.rst │ │ ├── linux.rst │ │ ├── macOS.rst │ │ ├── terminal.rst │ │ ├── testing.rst │ │ ├── unix-prerequisites.rst │ │ ├── web.rst │ │ └── windows.rst │ ├── plugins │ │ ├── image_formats.rst │ │ └── index.rst │ ├── screenshots │ │ ├── cocoa.png │ │ ├── gtk.png │ │ └── winforms.png │ ├── style │ │ ├── index.rst │ │ └── pack.rst │ └── widgets_by_platform.rst ├── spelling_wordlist └── tutorial │ ├── get-started.rst │ ├── index.rst │ ├── resources │ └── icons.zip │ ├── screenshots │ ├── tutorial-0.png │ ├── tutorial-1.png │ ├── tutorial-2.png │ ├── tutorial-3.png │ └── tutorial-4.png │ ├── tutorial-0.rst │ ├── tutorial-1.rst │ ├── tutorial-2.rst │ ├── tutorial-3.rst │ └── tutorial-4.rst ├── dummy ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml └── src │ └── toga_dummy │ ├── __init__.py │ ├── app.py │ ├── colors.py │ ├── command.py │ ├── dialogs.py │ ├── factory.py │ ├── fonts.py │ ├── hardware │ ├── __init__.py │ ├── camera.py │ └── location.py │ ├── icons.py │ ├── images.py │ ├── paths.py │ ├── plugins │ ├── __init__.py │ └── image_formats.py │ ├── resources │ ├── __init__.py │ ├── sample.png │ ├── screenshot.png │ └── toga.png │ ├── screens.py │ ├── statusicons.py │ ├── utils.py │ ├── widgets │ ├── __init__.py │ ├── activityindicator.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── canvas.py │ ├── dateinput.py │ ├── detailedlist.py │ ├── divider.py │ ├── imageview.py │ ├── label.py │ ├── mapview.py │ ├── multilinetextinput.py │ ├── numberinput.py │ ├── optioncontainer.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── slider.py │ ├── splitcontainer.py │ ├── switch.py │ ├── table.py │ ├── textinput.py │ ├── timeinput.py │ ├── tree.py │ └── webview.py │ └── window.py ├── examples ├── .template │ ├── cookiecutter.json │ └── {{ cookiecutter.name }} │ │ ├── README.rst │ │ ├── pyproject.toml │ │ └── {{ cookiecutter.name }} │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ └── README ├── README.rst ├── activityindicator │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── activityindicator │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── beeliza │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── beeliza │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ ├── bot.py │ │ └── resources │ │ │ ├── brutus.png │ │ │ └── user.png │ └── pyproject.toml ├── box │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── box │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── pyproject.toml ├── button │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── button │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── star.png │ └── pyproject.toml ├── canvas │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── canvas │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── colors │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── colors │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── command │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── command │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ ├── brutus-256.png │ │ │ ├── brutus.icns │ │ │ ├── brutus.ico │ │ │ ├── brutus.png │ │ │ ├── command.png │ │ │ ├── cricket-256.png │ │ │ └── tiberius-256.png │ └── pyproject.toml ├── date_and_time │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── date_and_time │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── pyproject.toml ├── detailedlist │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── detailedlist │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ ├── resources │ │ │ └── brutus.png │ │ └── translations.py │ └── pyproject.toml ├── dialogs │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── dialogs │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── divider │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── divider │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── pyproject.toml ├── documentapp │ ├── Ironbark.exampledoc │ ├── Jabberwocky.exampledoc │ ├── README.rst │ ├── documentapp │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ ├── icons │ │ ├── exampledoc.icns │ │ ├── exampledoc.ico │ │ └── exampledoc.png │ └── pyproject.toml ├── examples_overview │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── examples_overview │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── focus │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── focus │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── pyproject.toml ├── font │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── font │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ ├── ENDOR___.ttf │ │ │ ├── Font Awesome 5 Free-Solid-900.otf │ │ │ ├── README │ │ │ ├── Roboto-Bold.ttf │ │ │ ├── Roboto-BoldItalic.ttf │ │ │ ├── Roboto-Italic.ttf │ │ │ ├── Roboto-Regular.ttf │ │ │ └── font.png │ └── pyproject.toml ├── font_size │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── font_size │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── pyproject.toml ├── handlers │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── handlers │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── hardware │ ├── README.rst │ ├── hardware │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── default.png │ └── pyproject.toml ├── imageview │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── imageview │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── pride-brutus.png │ └── pyproject.toml ├── layout │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── layout │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ ├── README │ │ │ └── tiberius.png │ └── pyproject.toml ├── mapview │ ├── README.rst │ ├── mapview │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── multilinetextinput │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── multilinetextinput │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── numberinput │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── numberinput │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── optioncontainer │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── optioncontainer │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── passwordinput │ ├── README.rst │ ├── passwordinput │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ │ └── README │ └── pyproject.toml ├── positron-django │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── src │ │ ├── manage.py │ │ └── positron │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ ├── resources │ │ ├── __init__.py │ │ ├── positron.icns │ │ ├── positron.ico │ │ └── positron.png │ │ ├── settings.py │ │ ├── urls.py │ │ └── wsgi.py ├── positron-static │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── src │ │ └── positron │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ ├── __init__.py │ │ ├── positron.icns │ │ ├── positron.ico │ │ ├── positron.png │ │ └── webapp │ │ ├── index.html │ │ └── positron.css ├── progressbar │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── progressbar │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py │ └── pyproject.toml ├── resize │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── resize │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── screenshot │ ├── README.rst │ ├── pyproject.toml │ └── screenshot │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ ├── canvas.py │ │ └── resources │ │ ├── README │ │ ├── brutus.png │ │ ├── landmark-android.png │ │ ├── landmark-iOS.png │ │ ├── smile-android.png │ │ ├── smile-iOS.png │ │ └── user.png ├── scrollcontainer │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── scrollcontainer │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ └── README ├── selection │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── selection │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── simpleapp │ ├── README.rst │ ├── pyproject.toml │ └── simpleapp │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── slider │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── slider │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── splitcontainer │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── splitcontainer │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── statusiconapp │ ├── README.rst │ ├── pyproject.toml │ └── statusiconapp │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ ├── README │ │ ├── blue.png │ │ └── status-icon.png ├── switch_demo │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── switch_demo │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ └── README ├── table │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── table │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── icons │ │ ├── green.png │ │ └── red.png ├── table_source │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── table_source │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── textinput │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── textinput │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ └── README ├── tree │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── tree │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── tree_source │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── tree_source │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ ├── file.icns │ │ ├── file.ico │ │ ├── file.png │ │ ├── folder.icns │ │ ├── folder.ico │ │ └── folder.png ├── tutorial0 │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ ├── sandbox.html │ └── tutorial │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── tutorial1 │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── tutorial │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── tutorial2 │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── tutorial │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── icons │ │ ├── brutus-256.png │ │ ├── brutus.icns │ │ ├── brutus.ico │ │ └── cricket-72.png ├── tutorial3 │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── tutorial │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── tutorial4 │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── tutorial │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py ├── webview │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── webview │ │ ├── __init__.py │ │ ├── __main__.py │ │ └── app.py └── window │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── pyproject.toml │ └── window │ ├── __init__.py │ ├── __main__.py │ ├── app.py │ └── resources │ └── README ├── gtk ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src │ └── toga_gtk │ │ ├── __init__.py │ │ ├── app.py │ │ ├── colors.py │ │ ├── command.py │ │ ├── container.py │ │ ├── dialogs.py │ │ ├── factory.py │ │ ├── fonts.py │ │ ├── hardware │ │ ├── __init__.py │ │ └── location.py │ │ ├── icons.py │ │ ├── images.py │ │ ├── keys.py │ │ ├── libs │ │ ├── __init__.py │ │ ├── fontconfig.py │ │ ├── gtk.py │ │ ├── styles.py │ │ └── utils.py │ │ ├── paths.py │ │ ├── resources │ │ └── toga.png │ │ ├── screens.py │ │ ├── statusicons.py │ │ ├── widgets │ │ ├── __init__.py │ │ ├── activityindicator.py │ │ ├── base.py │ │ ├── box.py │ │ ├── button.py │ │ ├── canvas.py │ │ ├── detailedlist.py │ │ ├── divider.py │ │ ├── imageview.py │ │ ├── label.py │ │ ├── mapview.py │ │ ├── multilinetextinput.py │ │ ├── numberinput.py │ │ ├── optioncontainer.py │ │ ├── passwordinput.py │ │ ├── progressbar.py │ │ ├── scrollcontainer.py │ │ ├── selection.py │ │ ├── slider.py │ │ ├── splitcontainer.py │ │ ├── switch.py │ │ ├── table.py │ │ ├── textinput.py │ │ ├── tree.py │ │ └── webview.py │ │ └── window.py └── tests_backend │ ├── __init__.py │ ├── app.py │ ├── dialogs.py │ ├── fonts.py │ ├── hardware │ ├── __init__.py │ └── location.py │ ├── icons.py │ ├── images.py │ ├── probe.py │ ├── screens.py │ ├── widgets │ ├── __init__.py │ ├── activityindicator.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── canvas.py │ ├── detailedlist.py │ ├── divider.py │ ├── imageview.py │ ├── label.py │ ├── mapview.py │ ├── multilinetextinput.py │ ├── numberinput.py │ ├── optioncontainer.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── properties.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── slider.py │ ├── splitcontainer.py │ ├── switch.py │ ├── table.py │ ├── textinput.py │ ├── tree.py │ └── webview.py │ └── window.py ├── iOS ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src │ └── toga_iOS │ │ ├── __init__.py │ │ ├── app.py │ │ ├── colors.py │ │ ├── command.py │ │ ├── constraints.py │ │ ├── container.py │ │ ├── dialogs.py │ │ ├── factory.py │ │ ├── fonts.py │ │ ├── hardware │ │ ├── __init__.py │ │ ├── camera.py │ │ └── location.py │ │ ├── icons.py │ │ ├── images.py │ │ ├── libs │ │ ├── __init__.py │ │ ├── av_foundation.py │ │ ├── core_graphics.py │ │ ├── core_location.py │ │ ├── core_text.py │ │ ├── foundation.py │ │ ├── mapkit.py │ │ ├── uikit.py │ │ └── webkit.py │ │ ├── paths.py │ │ ├── resources │ │ ├── optioncontainer-tab.png │ │ └── toga.icns │ │ ├── screens.py │ │ ├── statusicons.py │ │ ├── widgets │ │ ├── __init__.py │ │ ├── activityindicator.py │ │ ├── base.py │ │ ├── box.py │ │ ├── button.py │ │ ├── canvas.py │ │ ├── detailedlist.py │ │ ├── divider.py │ │ ├── imageview.py │ │ ├── label.py │ │ ├── mapview.py │ │ ├── multilinetextinput.py │ │ ├── numberinput.py │ │ ├── optioncontainer.py │ │ ├── passwordinput.py │ │ ├── progressbar.py │ │ ├── scrollcontainer.py │ │ ├── selection.py │ │ ├── slider.py │ │ ├── switch.py │ │ ├── textinput.py │ │ └── webview.py │ │ └── window.py └── tests_backend │ ├── __init__.py │ ├── app.py │ ├── dialogs.py │ ├── fonts.py │ ├── hardware │ ├── __init__.py │ ├── camera.py │ └── location.py │ ├── icons.py │ ├── images.py │ ├── probe.py │ ├── screens.py │ ├── widgets │ ├── __init__.py │ ├── activityindicator.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── canvas.py │ ├── detailedlist.py │ ├── divider.py │ ├── imageview.py │ ├── label.py │ ├── mapview.py │ ├── multilinetextinput.py │ ├── numberinput.py │ ├── optioncontainer.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── properties.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── slider.py │ ├── switch.py │ ├── textinput.py │ └── webview.py │ └── window.py ├── positron ├── CONTRIBUTING.md ├── README.md ├── pyproject.toml └── src │ └── positron │ ├── __init__.py │ ├── django.py │ ├── django_templates │ ├── app.py.tmpl │ ├── manage.py.tmpl │ ├── settings.py.tmpl │ ├── urls.py.tmpl │ └── wsgi.py.tmpl │ ├── sitespecific.py │ └── static.py ├── pyproject.toml ├── testbed ├── .gitignore ├── CHANGELOG ├── LICENSE ├── icons │ ├── testbed-1024.png │ ├── testbed-120.png │ ├── testbed-128.png │ ├── testbed-152.png │ ├── testbed-16.png │ ├── testbed-167.png │ ├── testbed-180.png │ ├── testbed-20.png │ ├── testbed-256.png │ ├── testbed-29.png │ ├── testbed-32.png │ ├── testbed-40.png │ ├── testbed-512.png │ ├── testbed-58.png │ ├── testbed-60.png │ ├── testbed-64.png │ ├── testbed-72.png │ ├── testbed-76.png │ ├── testbed-80.png │ ├── testbed-87.png │ ├── testbed-round-144.png │ ├── testbed-round-192.png │ ├── testbed-round-48.png │ ├── testbed-round-72.png │ ├── testbed-round-96.png │ ├── testbed-square-144.png │ ├── testbed-square-192.png │ ├── testbed-square-48.png │ ├── testbed-square-72.png │ ├── testbed-square-96.png │ ├── testbed.icns │ ├── testbed.ico │ └── testbed.png ├── pyproject.toml ├── src │ └── testbed │ │ ├── __init__.py │ │ ├── __main__.py │ │ ├── app.py │ │ └── resources │ │ ├── __init__.py │ │ ├── alt-icon.icns │ │ ├── alt-icon.ico │ │ ├── alt-icon.png │ │ ├── canvas │ │ ├── arc.png │ │ ├── bezier_curve.png │ │ ├── closed_path_context.png │ │ ├── ellipse.png │ │ ├── ellipse_path.png │ │ ├── fill.png │ │ ├── fill_context.png │ │ ├── multiline_text-android.png │ │ ├── multiline_text-gtk-wayland.png │ │ ├── multiline_text-gtk-x11.png │ │ ├── multiline_text-iOS.png │ │ ├── multiline_text-macOS.png │ │ ├── multiline_text-winforms.png │ │ ├── paths.png │ │ ├── quadratic_curve.png │ │ ├── rect.png │ │ ├── stroke.png │ │ ├── stroke_context.png │ │ ├── transforms.png │ │ ├── transparency.png │ │ ├── write_text-android.png │ │ ├── write_text-gtk.png │ │ ├── write_text-iOS.png │ │ ├── write_text-macOS.png │ │ └── write_text-winforms.png │ │ ├── fonts │ │ ├── Corrupted.ttf │ │ ├── DroidSerif-Bold.ttf │ │ ├── DroidSerif-Regular.ttf │ │ ├── ENDOR___.ttf │ │ ├── Font Awesome 5 Free-Solid-900.otf │ │ ├── Roboto-Bold.ttf │ │ ├── Roboto-BoldItalic.ttf │ │ └── Roboto-Italic.ttf │ │ ├── icons │ │ ├── bad-32.png │ │ ├── bad-72.png │ │ ├── bad.icns │ │ ├── bad.ico │ │ ├── bad.png │ │ ├── blue.png │ │ ├── green-16.png │ │ ├── green-32.png │ │ ├── green-72.png │ │ ├── green.icns │ │ ├── green.ico │ │ ├── green.png │ │ ├── orange.ico │ │ ├── red-16.png │ │ ├── red-32.png │ │ ├── red-72.png │ │ ├── red.icns │ │ ├── red.ico │ │ └── red.png │ │ ├── logo-android.png │ │ ├── logo-iOS.icns │ │ ├── logo-linux-32.png │ │ ├── logo-linux-72.png │ │ ├── logo-macOS.icns │ │ ├── logo-windows.ico │ │ ├── new-tab-android.png │ │ ├── new-tab-iOS.png │ │ ├── photo.png │ │ ├── sample.png │ │ ├── tab-icon-1-android.png │ │ ├── tab-icon-1-iOS.png │ │ ├── tab-icon-2-android.png │ │ └── tab-icon-2-iOS.png └── tests │ ├── __init__.py │ ├── app │ ├── __init__.py │ ├── conftest.py │ ├── docs │ │ ├── broken.testbed │ │ └── example.testbed │ ├── test_app.py │ ├── test_desktop.py │ ├── test_dialogs.py │ ├── test_document_app.py │ ├── test_mobile.py │ └── test_screens.py │ ├── assertions.py │ ├── conftest.py │ ├── data.py │ ├── hardware │ ├── __init__.py │ ├── probe.py │ ├── test_camera.py │ └── test_location.py │ ├── test_command.py │ ├── test_fonts.py │ ├── test_icons.py │ ├── test_images.py │ ├── test_keys.py │ ├── test_paths.py │ ├── test_statusicons.py │ ├── testbed.py │ ├── widgets │ ├── __init__.py │ ├── conftest.py │ ├── probe.py │ ├── properties.py │ ├── test_activityindicator.py │ ├── test_base.py │ ├── test_box.py │ ├── test_button.py │ ├── test_canvas.py │ ├── test_dateinput.py │ ├── test_detailedlist.py │ ├── test_divider.py │ ├── test_imageview.py │ ├── test_label.py │ ├── test_mapview.py │ ├── test_multilinetextinput.py │ ├── test_numberinput.py │ ├── test_optioncontainer.py │ ├── test_passwordinput.py │ ├── test_progressbar.py │ ├── test_scrollcontainer.py │ ├── test_selection.py │ ├── test_slider.py │ ├── test_splitcontainer.py │ ├── test_switch.py │ ├── test_table.py │ ├── test_textinput.py │ ├── test_timeinput.py │ ├── test_tree.py │ └── test_webview.py │ └── window │ ├── __init__.py │ ├── test_dialogs.py │ └── test_window.py ├── textual ├── CONTRIBUTING.md ├── README.rst ├── pyproject.toml ├── src │ └── toga_textual │ │ ├── __init__.py │ │ ├── app.py │ │ ├── command.py │ │ ├── container.py │ │ ├── dialogs.py │ │ ├── factory.py │ │ ├── fonts.py │ │ ├── icons.py │ │ ├── paths.py │ │ ├── resources │ │ └── toga.png │ │ ├── screens.py │ │ ├── statusicons.py │ │ ├── widgets │ │ ├── __init__.py │ │ ├── base.py │ │ ├── box.py │ │ ├── button.py │ │ ├── label.py │ │ └── textinput.py │ │ └── window.py └── tests_backend │ ├── __init__.py │ ├── app.py │ ├── images.py │ ├── probe.py │ ├── screens.py │ └── widgets │ ├── __init__.py │ ├── base.py │ ├── box.py │ └── button.py ├── toga ├── CONTRIBUTING.md ├── LICENSE ├── README.rst └── pyproject.toml ├── tox.ini ├── travertino ├── AUTHORS ├── CHANGELOG.rst ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src │ └── travertino │ │ ├── __init__.py │ │ ├── colors.py │ │ ├── constants.py │ │ ├── declaration.py │ │ ├── fonts.py │ │ ├── layout.py │ │ ├── node.py │ │ ├── properties │ │ ├── __init__.py │ │ ├── aliased.py │ │ ├── choices.py │ │ ├── immutablelist.py │ │ ├── shorthand.py │ │ └── validated.py │ │ ├── size.py │ │ └── style.py └── tests │ ├── __init__.py │ ├── colors │ ├── __init__.py │ ├── test_alpha_blending.py │ ├── test_color_conversion.py │ ├── test_constructor.py │ └── test_parsing.py │ ├── test_choices.py │ ├── test_fonts.py │ ├── test_layout.py │ ├── test_node.py │ ├── test_size.py │ ├── test_style.py │ └── utils.py ├── web ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml └── src │ └── toga_web │ ├── __init__.py │ ├── app.py │ ├── command.py │ ├── dialogs.py │ ├── factory.py │ ├── fonts.py │ ├── icons.py │ ├── libs.py │ ├── paths.py │ ├── resources │ └── toga.png │ ├── screens.py │ ├── static │ └── toga.css │ ├── statusicons.py │ ├── widgets │ ├── __init__.py │ ├── activityindicator.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── dateinput.py │ ├── divider.py │ ├── label.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── switch.py │ ├── textinput.py │ └── timeinput.py │ └── window.py └── winforms ├── CONTRIBUTING.md ├── LICENSE ├── README.rst ├── pyproject.toml ├── src └── toga_winforms │ ├── __init__.py │ ├── app.py │ ├── colors.py │ ├── command.py │ ├── container.py │ ├── dialogs.py │ ├── factory.py │ ├── fonts.py │ ├── hardware │ └── __init__.py │ ├── icons.py │ ├── images.py │ ├── keys.py │ ├── libs │ ├── WebView2 │ │ ├── LICENSE.md │ │ ├── Microsoft.Web.WebView2.Core.dll │ │ ├── Microsoft.Web.WebView2.WinForms.dll │ │ ├── README.md │ │ └── runtimes │ │ │ ├── win-arm64 │ │ │ └── native │ │ │ │ └── WebView2Loader.dll │ │ │ ├── win-x64 │ │ │ └── native │ │ │ │ └── WebView2Loader.dll │ │ │ └── win-x86 │ │ │ └── native │ │ │ └── WebView2Loader.dll │ ├── __init__.py │ ├── extensions.py │ ├── fonts.py │ ├── proactor.py │ ├── shcore.py │ ├── user32.py │ └── wrapper.py │ ├── paths.py │ ├── resources │ └── toga.ico │ ├── screens.py │ ├── statusicons.py │ ├── widgets │ ├── __init__.py │ ├── base.py │ ├── box.py │ ├── button.py │ ├── canvas.py │ ├── dateinput.py │ ├── detailedlist.py │ ├── divider.py │ ├── imageview.py │ ├── label.py │ ├── mapview.py │ ├── multilinetextinput.py │ ├── numberinput.py │ ├── optioncontainer.py │ ├── passwordinput.py │ ├── progressbar.py │ ├── scrollcontainer.py │ ├── selection.py │ ├── slider.py │ ├── splitcontainer.py │ ├── switch.py │ ├── table.py │ ├── textinput.py │ ├── timeinput.py │ └── webview.py │ └── window.py └── tests_backend ├── __init__.py ├── app.py ├── dialogs.py ├── fonts.py ├── icons.py ├── images.py ├── probe.py ├── screens.py ├── widgets ├── __init__.py ├── base.py ├── box.py ├── button.py ├── canvas.py ├── dateinput.py ├── detailedlist.py ├── divider.py ├── imageview.py ├── label.py ├── mapview.py ├── multilinetextinput.py ├── numberinput.py ├── optioncontainer.py ├── passwordinput.py ├── progressbar.py ├── properties.py ├── scrollcontainer.py ├── selection.py ├── slider.py ├── splitcontainer.py ├── switch.py ├── table.py ├── textinput.py ├── timeinput.py └── webview.py └── window.py /.git-blame-ignore-revs: -------------------------------------------------------------------------------- 1 | # Add pre-commit hook: pyupgrade 2 | 63ddaa623c66d7386ab29a377cacb791fe334106 3 | 4 | # Migrate code style to Black 5 | 10c22a3a5453ca24060caaceee5f93ec095959ae 6 | -------------------------------------------------------------------------------- /.github/workflows/dependabot-changenote.yml: -------------------------------------------------------------------------------- 1 | name: Dependabot Change Note 2 | 3 | on: 4 | push: 5 | branches: 6 | - 'dependabot/**' 7 | 8 | jobs: 9 | changenote: 10 | name: Dependabot Change Note 11 | uses: beeware/.github/.github/workflows/dependabot-changenote.yml@main 12 | secrets: inherit 13 | -------------------------------------------------------------------------------- /android/src/toga_android/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | __version__ = travertino._package_version(__file__, __name__) 4 | -------------------------------------------------------------------------------- /android/src/toga_android/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/hardware/__init__.py -------------------------------------------------------------------------------- /android/src/toga_android/libs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/libs/__init__.py -------------------------------------------------------------------------------- /android/src/toga_android/resources/marker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/resources/marker.png -------------------------------------------------------------------------------- /android/src/toga_android/resources/optioncontainer-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/resources/optioncontainer-tab.png -------------------------------------------------------------------------------- /android/src/toga_android/resources/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/resources/toga.png -------------------------------------------------------------------------------- /android/src/toga_android/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/widgets/__init__.py -------------------------------------------------------------------------------- /android/src/toga_android/widgets/box.py: -------------------------------------------------------------------------------- 1 | from android.widget import RelativeLayout 2 | 3 | from .base import Widget 4 | 5 | 6 | class Box(Widget): 7 | def create(self): 8 | self.native = RelativeLayout(self._native_activity) 9 | -------------------------------------------------------------------------------- /android/src/toga_android/widgets/internal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/src/toga_android/widgets/internal/__init__.py -------------------------------------------------------------------------------- /android/src/toga_android/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from android.text import InputType 2 | 3 | from .textinput import TextInput 4 | 5 | 6 | class PasswordInput(TextInput): 7 | def create(self): 8 | super().create( 9 | InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD, 10 | ) 11 | -------------------------------------------------------------------------------- /android/tests_backend/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/tests_backend/__init__.py -------------------------------------------------------------------------------- /android/tests_backend/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/tests_backend/hardware/__init__.py -------------------------------------------------------------------------------- /android/tests_backend/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/android/tests_backend/widgets/__init__.py -------------------------------------------------------------------------------- /android/tests_backend/widgets/box.py: -------------------------------------------------------------------------------- 1 | from java import jclass 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class BoxProbe(SimpleProbe): 7 | native_class = jclass("android.widget.RelativeLayout") 8 | -------------------------------------------------------------------------------- /android/tests_backend/widgets/divider.py: -------------------------------------------------------------------------------- 1 | from java import jclass 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class DividerProbe(SimpleProbe): 7 | native_class = jclass("android.view.View") 8 | -------------------------------------------------------------------------------- /android/tests_backend/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInputProbe 2 | 3 | 4 | class PasswordInputProbe(TextInputProbe): 5 | default_font_family = "monospace" 6 | -------------------------------------------------------------------------------- /android/tests_backend/widgets/switch.py: -------------------------------------------------------------------------------- 1 | from java import jclass 2 | 3 | from .label import LabelProbe 4 | 5 | 6 | # On Android, a Button is just a TextView with a state-dependent background image. 7 | class SwitchProbe(LabelProbe): 8 | native_class = jclass("android.widget.Switch") 9 | -------------------------------------------------------------------------------- /changes/2818.bugfix.rst: -------------------------------------------------------------------------------- 1 | Added a check to ensure window content exists before calling the refresh method for textual. 2 | -------------------------------------------------------------------------------- /changes/2841.feature.rst: -------------------------------------------------------------------------------- 1 | Added dark mode detection function for Android. 2 | -------------------------------------------------------------------------------- /changes/3138.misc.rst: -------------------------------------------------------------------------------- 1 | Update docs to remove `style=` syntax and access them directly instead 2 | -------------------------------------------------------------------------------- /changes/3334.feature.rst: -------------------------------------------------------------------------------- 1 | The Web backend now provides Selection widgets. 2 | -------------------------------------------------------------------------------- /changes/3358.feature.rst: -------------------------------------------------------------------------------- 1 | Toga core module now supports type checking of lazily loaded classes. 2 | -------------------------------------------------------------------------------- /changes/3399.bugfix.rst: -------------------------------------------------------------------------------- 1 | Removed work around to suppress textual backend logging messages when app is closed. 2 | -------------------------------------------------------------------------------- /changes/3420.misc.rst: -------------------------------------------------------------------------------- 1 | toga winforms is now updated with new dialogs api 2 | -------------------------------------------------------------------------------- /changes/3426.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /travertino. 2 | -------------------------------------------------------------------------------- /changes/3427.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /toga. 2 | -------------------------------------------------------------------------------- /changes/3428.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /dummy. 2 | -------------------------------------------------------------------------------- /changes/3429.misc.rst: -------------------------------------------------------------------------------- 1 | Updated fonttools from 4.57.0 to 4.58.0 in /testbed. 2 | -------------------------------------------------------------------------------- /changes/3430.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /winforms. 2 | -------------------------------------------------------------------------------- /changes/3431.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /cocoa. 2 | -------------------------------------------------------------------------------- /changes/3432.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /gtk. 2 | -------------------------------------------------------------------------------- /changes/3433.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /android. 2 | -------------------------------------------------------------------------------- /changes/3434.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /web. 2 | -------------------------------------------------------------------------------- /changes/3435.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /positron. 2 | -------------------------------------------------------------------------------- /changes/3436.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /core. 2 | -------------------------------------------------------------------------------- /changes/3437.misc.rst: -------------------------------------------------------------------------------- 1 | Updated sphinx-toolbox from 3.9.0 to 3.10.0 in /core. 2 | -------------------------------------------------------------------------------- /changes/3438.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.3.1 to 80.4.0 in /iOS. 2 | -------------------------------------------------------------------------------- /changes/3439.misc.rst: -------------------------------------------------------------------------------- 1 | References to the minimum Python version in READMEs have been removed. 2 | -------------------------------------------------------------------------------- /changes/3441.misc.rst: -------------------------------------------------------------------------------- 1 | A typo in the Pack documentation was corrected. 2 | -------------------------------------------------------------------------------- /changes/3444.bugfix.rst: -------------------------------------------------------------------------------- 1 | Apps that use a function-based app startup method now validate that the startup method returns content that can be added to the main window. 2 | -------------------------------------------------------------------------------- /changes/3444.misc.rst: -------------------------------------------------------------------------------- 1 | Restore main_window.show to the default startup method. 2 | -------------------------------------------------------------------------------- /changes/3447.misc.rst: -------------------------------------------------------------------------------- 1 | Documentation update, replacing the `range` keyword with `min` and `max` keywords in the Slider widget example. 2 | -------------------------------------------------------------------------------- /changes/3451.bugfix.rst: -------------------------------------------------------------------------------- 1 | Buttons in Toga Web now correctly respond to clicks and trigger their associated actions. 2 | -------------------------------------------------------------------------------- /changes/3452.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /winforms. 2 | -------------------------------------------------------------------------------- /changes/3453.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /gtk. 2 | -------------------------------------------------------------------------------- /changes/3454.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /travertino. 2 | -------------------------------------------------------------------------------- /changes/3455.misc.rst: -------------------------------------------------------------------------------- 1 | Updated tox from 4.25.0 to 4.26.0 in /travertino. 2 | -------------------------------------------------------------------------------- /changes/3456.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /positron. 2 | -------------------------------------------------------------------------------- /changes/3457.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /android. 2 | -------------------------------------------------------------------------------- /changes/3458.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /toga. 2 | -------------------------------------------------------------------------------- /changes/3459.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /cocoa. 2 | -------------------------------------------------------------------------------- /changes/3460.misc.rst: -------------------------------------------------------------------------------- 1 | Updated tox from 4.25.0 to 4.26.0 in /core. 2 | -------------------------------------------------------------------------------- /changes/3461.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /core. 2 | -------------------------------------------------------------------------------- /changes/3462.misc.rst: -------------------------------------------------------------------------------- 1 | Updated sphinx-toolbox from 3.10.0 to 4.0.0 in /core. 2 | -------------------------------------------------------------------------------- /changes/3463.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /iOS. 2 | -------------------------------------------------------------------------------- /changes/3464.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /web. 2 | -------------------------------------------------------------------------------- /changes/3465.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.4.0 to 80.7.1 in /dummy. 2 | -------------------------------------------------------------------------------- /changes/3472.bugfix.rst: -------------------------------------------------------------------------------- 1 | Table Widget on Windows now only fires one event on item selection. 2 | -------------------------------------------------------------------------------- /changes/3486.misc.rst: -------------------------------------------------------------------------------- 1 | Fixes a comment in the source of `NumberInput`. 2 | -------------------------------------------------------------------------------- /changes/3488.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /gtk. 2 | -------------------------------------------------------------------------------- /changes/3489.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /cocoa. 2 | -------------------------------------------------------------------------------- /changes/3490.misc.rst: -------------------------------------------------------------------------------- 1 | Updated coverage[toml] from 7.8.0 to 7.8.2 in /travertino. 2 | -------------------------------------------------------------------------------- /changes/3491.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /travertino. 2 | -------------------------------------------------------------------------------- /changes/3492.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /iOS. 2 | -------------------------------------------------------------------------------- /changes/3493.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /winforms. 2 | -------------------------------------------------------------------------------- /changes/3494.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /web. 2 | -------------------------------------------------------------------------------- /changes/3495.misc.rst: -------------------------------------------------------------------------------- 1 | Updated coverage from 7.8.0 to 7.8.2 in /testbed. 2 | -------------------------------------------------------------------------------- /changes/3496.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /core. 2 | -------------------------------------------------------------------------------- /changes/3497.misc.rst: -------------------------------------------------------------------------------- 1 | Updated coverage[toml] from 7.8.0 to 7.8.2 in /core. 2 | -------------------------------------------------------------------------------- /changes/3498.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /android. 2 | -------------------------------------------------------------------------------- /changes/3499.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /toga. 2 | -------------------------------------------------------------------------------- /changes/3500.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /dummy. 2 | -------------------------------------------------------------------------------- /changes/3501.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.7.1 to 80.8.0 in /positron. 2 | -------------------------------------------------------------------------------- /changes/3509.misc.rst: -------------------------------------------------------------------------------- 1 | Add a missing __init__.py to travertino.properties. 2 | -------------------------------------------------------------------------------- /changes/3511.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /iOS. 2 | -------------------------------------------------------------------------------- /changes/3512.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /winforms. 2 | -------------------------------------------------------------------------------- /changes/3513.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /dummy. 2 | -------------------------------------------------------------------------------- /changes/3514.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /cocoa. 2 | -------------------------------------------------------------------------------- /changes/3515.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /core. 2 | -------------------------------------------------------------------------------- /changes/3516.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /positron. 2 | -------------------------------------------------------------------------------- /changes/3517.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /travertino. 2 | -------------------------------------------------------------------------------- /changes/3518.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /gtk. 2 | -------------------------------------------------------------------------------- /changes/3519.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /android. 2 | -------------------------------------------------------------------------------- /changes/3520.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /web. 2 | -------------------------------------------------------------------------------- /changes/3521.misc.rst: -------------------------------------------------------------------------------- 1 | Updated fonttools from 4.58.0 to 4.58.1 in /testbed. 2 | -------------------------------------------------------------------------------- /changes/3522.misc.rst: -------------------------------------------------------------------------------- 1 | Updated setuptools from 80.8.0 to 80.9.0 in /toga. 2 | -------------------------------------------------------------------------------- /cocoa/src/toga_cocoa/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | __version__ = travertino._package_version(__file__, __name__) 4 | -------------------------------------------------------------------------------- /cocoa/src/toga_cocoa/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/src/toga_cocoa/hardware/__init__.py -------------------------------------------------------------------------------- /cocoa/src/toga_cocoa/resources/camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/src/toga_cocoa/resources/camera.png -------------------------------------------------------------------------------- /cocoa/src/toga_cocoa/resources/toga.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/src/toga_cocoa/resources/toga.icns -------------------------------------------------------------------------------- /cocoa/src/toga_cocoa/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/src/toga_cocoa/widgets/__init__.py -------------------------------------------------------------------------------- /cocoa/src/toga_cocoa/widgets/internal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/src/toga_cocoa/widgets/internal/__init__.py -------------------------------------------------------------------------------- /cocoa/tests_backend/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/tests_backend/__init__.py -------------------------------------------------------------------------------- /cocoa/tests_backend/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/tests_backend/hardware/__init__.py -------------------------------------------------------------------------------- /cocoa/tests_backend/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/cocoa/tests_backend/widgets/__init__.py -------------------------------------------------------------------------------- /cocoa/tests_backend/widgets/activityindicator.py: -------------------------------------------------------------------------------- 1 | from toga_cocoa.libs import NSProgressIndicator 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class ActivityIndicatorProbe(SimpleProbe): 7 | native_class = NSProgressIndicator 8 | -------------------------------------------------------------------------------- /cocoa/tests_backend/widgets/box.py: -------------------------------------------------------------------------------- 1 | from toga_cocoa.libs import NSView 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class BoxProbe(SimpleProbe): 7 | native_class = NSView 8 | -------------------------------------------------------------------------------- /cocoa/tests_backend/widgets/divider.py: -------------------------------------------------------------------------------- 1 | from toga_cocoa.libs import NSBox 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class DividerProbe(SimpleProbe): 7 | native_class = NSBox 8 | -------------------------------------------------------------------------------- /cocoa/tests_backend/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from toga_cocoa.libs import NSSecureTextField 2 | 3 | from .textinput import TextInputProbe 4 | 5 | 6 | class PasswordInputProbe(TextInputProbe): 7 | native_class = NSSecureTextField 8 | 9 | @property 10 | def value_hidden(self): 11 | return True 12 | -------------------------------------------------------------------------------- /core/src/toga/colors.py: -------------------------------------------------------------------------------- 1 | # Use the Travertino color definitions as-is 2 | from travertino.colors import * # noqa: F401, F403 3 | -------------------------------------------------------------------------------- /core/src/toga/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/src/toga/hardware/__init__.py -------------------------------------------------------------------------------- /core/src/toga/plugins/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/src/toga/plugins/__init__.py -------------------------------------------------------------------------------- /core/src/toga/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/src/toga/py.typed -------------------------------------------------------------------------------- /core/src/toga/resources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/src/toga/resources/__init__.py -------------------------------------------------------------------------------- /core/src/toga/style/__init__.py: -------------------------------------------------------------------------------- 1 | from toga.style.applicator import TogaApplicator # noqa: F401 2 | from toga.style.pack import Pack # noqa: F401 3 | 4 | __all__ = [ 5 | "Pack", 6 | "TogaApplicator", 7 | ] 8 | -------------------------------------------------------------------------------- /core/src/toga/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/src/toga/widgets/__init__.py -------------------------------------------------------------------------------- /core/src/toga/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from __future__ import annotations 2 | 3 | from typing import Any 4 | 5 | from .textinput import TextInput 6 | 7 | 8 | class PasswordInput(TextInput): 9 | """Create a new password input widget.""" 10 | 11 | def _create(self) -> Any: 12 | return self.factory.PasswordInput(interface=self) 13 | -------------------------------------------------------------------------------- /core/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/__init__.py -------------------------------------------------------------------------------- /core/tests/app/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/app/__init__.py -------------------------------------------------------------------------------- /core/tests/command/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/command/__init__.py -------------------------------------------------------------------------------- /core/tests/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/hardware/__init__.py -------------------------------------------------------------------------------- /core/tests/resources/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/blue.png -------------------------------------------------------------------------------- /core/tests/resources/orange.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/orange.bmp -------------------------------------------------------------------------------- /core/tests/resources/orange.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/orange.png -------------------------------------------------------------------------------- /core/tests/resources/photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/photo.png -------------------------------------------------------------------------------- /core/tests/resources/red-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/red-16.png -------------------------------------------------------------------------------- /core/tests/resources/red-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/red-32.png -------------------------------------------------------------------------------- /core/tests/resources/red-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/red-72.png -------------------------------------------------------------------------------- /core/tests/resources/red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/red.png -------------------------------------------------------------------------------- /core/tests/resources/sample-dummy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/sample-dummy.png -------------------------------------------------------------------------------- /core/tests/resources/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/sample.png -------------------------------------------------------------------------------- /core/tests/resources/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/resources/toga.png -------------------------------------------------------------------------------- /core/tests/sources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/sources/__init__.py -------------------------------------------------------------------------------- /core/tests/statusicons/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/statusicons/__init__.py -------------------------------------------------------------------------------- /core/tests/style/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/style/__init__.py -------------------------------------------------------------------------------- /core/tests/style/pack/layout/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/style/pack/layout/__init__.py -------------------------------------------------------------------------------- /core/tests/testbed/simple/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/testbed/simple/__init__.py -------------------------------------------------------------------------------- /core/tests/testbed/simple/__main__.py: -------------------------------------------------------------------------------- 1 | from simple.app import main 2 | 3 | if __name__ == "__main__": 4 | main() 5 | -------------------------------------------------------------------------------- /core/tests/testbed/subclassed/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/testbed/subclassed/__init__.py -------------------------------------------------------------------------------- /core/tests/testbed/subclassed/__main__.py: -------------------------------------------------------------------------------- 1 | from subclassed.app import main 2 | 3 | if __name__ == "__main__": 4 | main() 5 | -------------------------------------------------------------------------------- /core/tests/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/widgets/__init__.py -------------------------------------------------------------------------------- /core/tests/widgets/canvas/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/widgets/canvas/__init__.py -------------------------------------------------------------------------------- /core/tests/window/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/core/tests/window/__init__.py -------------------------------------------------------------------------------- /core/tests/window/conftest.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | import toga 4 | 5 | 6 | @pytest.fixture 7 | def window(app): 8 | return toga.Window() 9 | -------------------------------------------------------------------------------- /demo/AUTHORS: -------------------------------------------------------------------------------- 1 | Toga Demo was originally created in July 2014. 2 | 3 | The PRIMARY AUTHORS are (and/or have been): 4 | Russell Keith-Magee 5 | 6 | And here is an inevitably incomplete list of MUCH-APPRECIATED CONTRIBUTORS -- 7 | people who have submitted patches, reported bugs, added translations, helped 8 | answer newbie questions, and generally made Toga Demo that much better: 9 | -------------------------------------------------------------------------------- /demo/toga_demo/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/demo/toga_demo/__init__.py -------------------------------------------------------------------------------- /demo/toga_demo/__main__.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | from toga_demo.app import main 3 | 4 | 5 | def run(): 6 | main().main_loop() 7 | 8 | 9 | if __name__ == "__main__": 10 | run() 11 | -------------------------------------------------------------------------------- /demo/toga_demo/resources/brutus-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/demo/toga_demo/resources/brutus-32.png -------------------------------------------------------------------------------- /demo/toga_demo/resources/brutus.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/demo/toga_demo/resources/brutus.icns -------------------------------------------------------------------------------- /demo/toga_demo/resources/brutus.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/demo/toga_demo/resources/brutus.ico -------------------------------------------------------------------------------- /demo/toga_demo/resources/toga-demo.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/demo/toga_demo/resources/toga-demo.icns -------------------------------------------------------------------------------- /demo/toga_demo/resources/toga-demo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/demo/toga_demo/resources/toga-demo.ico -------------------------------------------------------------------------------- /docs/background/index.rst: -------------------------------------------------------------------------------- 1 | .. _background: 2 | 3 | ========== 4 | Background 5 | ========== 6 | 7 | .. toctree:: 8 | :maxdepth: 2 9 | 10 | project/index 11 | community 12 | internals/index 13 | -------------------------------------------------------------------------------- /docs/background/internals/index.rst: -------------------------------------------------------------------------------- 1 | 2 | Toga's internals 3 | ================ 4 | 5 | .. toctree:: 6 | :maxdepth: 1 7 | 8 | architecture 9 | -------------------------------------------------------------------------------- /docs/background/project/index.rst: -------------------------------------------------------------------------------- 1 | ========== 2 | About Toga 3 | ========== 4 | 5 | .. toctree:: 6 | :maxdepth: 1 7 | 8 | Project philosophy 9 | FAQ 10 | success 11 | releases 12 | roadmap 13 | -------------------------------------------------------------------------------- /docs/extra/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: /en/latest/ 3 | Disallow: /en/v* 4 | Allow: /en/stable/ 5 | -------------------------------------------------------------------------------- /docs/how-to/contribute/index.rst: -------------------------------------------------------------------------------- 1 | ==================== 2 | Contributing to Toga 3 | ==================== 4 | 5 | Toga is an open source project, and actively encourages community contributions. The 6 | following guides will help you get started contributing to Toga. 7 | 8 | .. toctree:: 9 | :maxdepth: 2 10 | :glob: 11 | 12 | code 13 | docs 14 | -------------------------------------------------------------------------------- /docs/how-to/internal/index.rst: -------------------------------------------------------------------------------- 1 | ====================== 2 | Internal How-to guides 3 | ====================== 4 | 5 | These guides are for the maintainers of the Toga project, documenting 6 | internal project procedures. 7 | 8 | .. toctree:: 9 | :maxdepth: 2 10 | :glob: 11 | 12 | release 13 | -------------------------------------------------------------------------------- /docs/how-to/topics/index.rst: -------------------------------------------------------------------------------- 1 | ============ 2 | Topic guides 3 | ============ 4 | 5 | .. toctree:: 6 | :maxdepth: 1 7 | 8 | api-design 9 | layout 10 | data-sources 11 | -------------------------------------------------------------------------------- /docs/images/toga-demo-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/images/toga-demo-cocoa.png -------------------------------------------------------------------------------- /docs/images/toga-demo-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/images/toga-demo-gtk.png -------------------------------------------------------------------------------- /docs/images/toga-demo-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/images/toga-demo-winforms.png -------------------------------------------------------------------------------- /docs/images/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/images/toga.png -------------------------------------------------------------------------------- /docs/reference/api/constants.rst: -------------------------------------------------------------------------------- 1 | Constants 2 | ========= 3 | 4 | .. automodule:: toga.constants 5 | :member-order: bysource 6 | -------------------------------------------------------------------------------- /docs/reference/api/containers/index.rst: -------------------------------------------------------------------------------- 1 | Containers 2 | ========== 3 | 4 | .. toctree:: 5 | 6 | box 7 | optioncontainer 8 | scrollcontainer 9 | splitcontainer 10 | -------------------------------------------------------------------------------- /docs/reference/api/hardware/index.rst: -------------------------------------------------------------------------------- 1 | Hardware 2 | ======== 3 | 4 | .. toctree:: 5 | 6 | camera 7 | location 8 | screens 9 | -------------------------------------------------------------------------------- /docs/reference/api/resources/index.rst: -------------------------------------------------------------------------------- 1 | Resources 2 | ========= 3 | 4 | .. toctree:: 5 | 6 | app_paths 7 | dialogs 8 | fonts 9 | command 10 | document 11 | icons 12 | images 13 | sources/source 14 | sources/list_source 15 | sources/tree_source 16 | sources/value_source 17 | statusicons 18 | validators 19 | -------------------------------------------------------------------------------- /docs/reference/api/types.rst: -------------------------------------------------------------------------------- 1 | Types 2 | ===== 3 | 4 | .. autonamedtuple:: toga.LatLng 5 | .. autonamedtuple:: toga.Position 6 | .. autonamedtuple:: toga.Size 7 | -------------------------------------------------------------------------------- /docs/reference/api/widgets/table-accessors.rst: -------------------------------------------------------------------------------- 1 | The attribute names used on each row (called "accessors") are created automatically from 2 | the headings, by: 3 | 4 | 1. Converting the heading to lower case 5 | 2. Removing any character that can't be used in a Python identifier 6 | 3. Replacing all whitespace with ``_`` 7 | 4. Prepending ``_`` if the first character is a digit 8 | -------------------------------------------------------------------------------- /docs/reference/images/activityindicator-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/activityindicator-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/activityindicator-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/activityindicator-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/activityindicator-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/activityindicator-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/button-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/button-android.png -------------------------------------------------------------------------------- /docs/reference/images/button-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/button-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/button-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/button-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/button-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/button-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/button-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/button-web.png -------------------------------------------------------------------------------- /docs/reference/images/button-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/button-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/canvas-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/canvas-android.png -------------------------------------------------------------------------------- /docs/reference/images/canvas-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/canvas-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/canvas-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/canvas-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/canvas-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/canvas-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/canvas-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/canvas-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/dateinput-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/dateinput-android.png -------------------------------------------------------------------------------- /docs/reference/images/dateinput-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/dateinput-web.png -------------------------------------------------------------------------------- /docs/reference/images/dateinput-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/dateinput-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/detailedlist-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/detailedlist-android.png -------------------------------------------------------------------------------- /docs/reference/images/detailedlist-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/detailedlist-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/detailedlist-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/detailedlist-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/detailedlist-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/detailedlist-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/detailedlist-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/detailedlist-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/divider-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/divider-android.png -------------------------------------------------------------------------------- /docs/reference/images/divider-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/divider-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/divider-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/divider-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/divider-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/divider-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/divider-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/divider-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/imageview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/imageview.png -------------------------------------------------------------------------------- /docs/reference/images/label-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/label-android.png -------------------------------------------------------------------------------- /docs/reference/images/label-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/label-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/label-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/label-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/label-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/label-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/label-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/label-web.png -------------------------------------------------------------------------------- /docs/reference/images/label-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/label-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/mainwindow-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mainwindow-android.png -------------------------------------------------------------------------------- /docs/reference/images/mainwindow-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mainwindow-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/mainwindow-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mainwindow-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/mainwindow-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mainwindow-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/mainwindow-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mainwindow-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/mapview-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mapview-android.png -------------------------------------------------------------------------------- /docs/reference/images/mapview-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mapview-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/mapview-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mapview-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/mapview-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mapview-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/mapview-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/mapview-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/multilinetextinput-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/multilinetextinput-android.png -------------------------------------------------------------------------------- /docs/reference/images/multilinetextinput-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/multilinetextinput-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/multilinetextinput-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/multilinetextinput-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/multilinetextinput-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/multilinetextinput-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/multilinetextinput-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/multilinetextinput-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/numberinput-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/numberinput-android.png -------------------------------------------------------------------------------- /docs/reference/images/numberinput-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/numberinput-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/numberinput-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/numberinput-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/numberinput-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/numberinput-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/numberinput-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/numberinput-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/optioncontainer-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/optioncontainer-android.png -------------------------------------------------------------------------------- /docs/reference/images/optioncontainer-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/optioncontainer-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/optioncontainer-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/optioncontainer-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/optioncontainer-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/optioncontainer-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/optioncontainer-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/optioncontainer-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/passwordinput-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/passwordinput-android.png -------------------------------------------------------------------------------- /docs/reference/images/passwordinput-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/passwordinput-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/passwordinput-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/passwordinput-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/passwordinput-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/passwordinput-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/passwordinput-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/passwordinput-web.png -------------------------------------------------------------------------------- /docs/reference/images/passwordinput-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/passwordinput-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/progressbar-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/progressbar-android.png -------------------------------------------------------------------------------- /docs/reference/images/progressbar-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/progressbar-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/progressbar-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/progressbar-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/progressbar-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/progressbar-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/progressbar-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/progressbar-web.png -------------------------------------------------------------------------------- /docs/reference/images/progressbar-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/progressbar-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/scrollcontainer-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/scrollcontainer-android.png -------------------------------------------------------------------------------- /docs/reference/images/scrollcontainer-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/scrollcontainer-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/scrollcontainer-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/scrollcontainer-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/scrollcontainer-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/scrollcontainer-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/scrollcontainer-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/scrollcontainer-web.png -------------------------------------------------------------------------------- /docs/reference/images/scrollcontainer-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/scrollcontainer-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/selection-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/selection-android.png -------------------------------------------------------------------------------- /docs/reference/images/selection-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/selection-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/selection-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/selection-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/selection-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/selection-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/selection-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/selection-web.png -------------------------------------------------------------------------------- /docs/reference/images/selection-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/selection-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/slider-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/slider-android.png -------------------------------------------------------------------------------- /docs/reference/images/slider-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/slider-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/slider-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/slider-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/slider-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/slider-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/slider-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/slider-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/splitcontainer-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/splitcontainer-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/splitcontainer-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/splitcontainer-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/splitcontainer-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/splitcontainer-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/statusicons-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/statusicons-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/statusicons-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/statusicons-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/statusicons-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/statusicons-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/switch-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/switch-android.png -------------------------------------------------------------------------------- /docs/reference/images/switch-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/switch-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/switch-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/switch-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/switch-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/switch-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/switch-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/switch-web.png -------------------------------------------------------------------------------- /docs/reference/images/switch-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/switch-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/table-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/table-android.png -------------------------------------------------------------------------------- /docs/reference/images/table-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/table-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/table-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/table-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/table-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/table-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/textinput-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/textinput-android.png -------------------------------------------------------------------------------- /docs/reference/images/textinput-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/textinput-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/textinput-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/textinput-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/textinput-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/textinput-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/textinput-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/textinput-web.png -------------------------------------------------------------------------------- /docs/reference/images/textinput-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/textinput-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/timeinput-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/timeinput-android.png -------------------------------------------------------------------------------- /docs/reference/images/timeinput-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/timeinput-web.png -------------------------------------------------------------------------------- /docs/reference/images/timeinput-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/timeinput-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/tree-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/tree-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/tree-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/tree-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/webview-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/webview-android.png -------------------------------------------------------------------------------- /docs/reference/images/webview-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/webview-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/webview-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/webview-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/webview-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/webview-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/webview-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/webview-winforms.png -------------------------------------------------------------------------------- /docs/reference/images/window-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/window-android.png -------------------------------------------------------------------------------- /docs/reference/images/window-cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/window-cocoa.png -------------------------------------------------------------------------------- /docs/reference/images/window-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/window-gtk.png -------------------------------------------------------------------------------- /docs/reference/images/window-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/window-iOS.png -------------------------------------------------------------------------------- /docs/reference/images/window-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/images/window-winforms.png -------------------------------------------------------------------------------- /docs/reference/index.rst: -------------------------------------------------------------------------------- 1 | .. _reference: 2 | 3 | ========= 4 | Reference 5 | ========= 6 | 7 | .. toctree:: 8 | :maxdepth: 1 9 | 10 | api/index 11 | platforms/index 12 | widgets_by_platform 13 | style/index 14 | plugins/index 15 | -------------------------------------------------------------------------------- /docs/reference/plugins/index.rst: -------------------------------------------------------------------------------- 1 | .. _plugins: 2 | 3 | ======= 4 | Plugins 5 | ======= 6 | 7 | .. toctree:: 8 | :maxdepth: 1 9 | 10 | image_formats 11 | -------------------------------------------------------------------------------- /docs/reference/screenshots/cocoa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/screenshots/cocoa.png -------------------------------------------------------------------------------- /docs/reference/screenshots/gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/screenshots/gtk.png -------------------------------------------------------------------------------- /docs/reference/screenshots/winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/reference/screenshots/winforms.png -------------------------------------------------------------------------------- /docs/reference/style/index.rst: -------------------------------------------------------------------------------- 1 | .. _style: 2 | 3 | ===== 4 | Style 5 | ===== 6 | 7 | 8 | 9 | .. toctree:: 10 | :maxdepth: 1 11 | 12 | pack 13 | -------------------------------------------------------------------------------- /docs/tutorial/resources/icons.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/tutorial/resources/icons.zip -------------------------------------------------------------------------------- /docs/tutorial/screenshots/tutorial-0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/tutorial/screenshots/tutorial-0.png -------------------------------------------------------------------------------- /docs/tutorial/screenshots/tutorial-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/tutorial/screenshots/tutorial-1.png -------------------------------------------------------------------------------- /docs/tutorial/screenshots/tutorial-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/tutorial/screenshots/tutorial-2.png -------------------------------------------------------------------------------- /docs/tutorial/screenshots/tutorial-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/tutorial/screenshots/tutorial-3.png -------------------------------------------------------------------------------- /docs/tutorial/screenshots/tutorial-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/docs/tutorial/screenshots/tutorial-4.png -------------------------------------------------------------------------------- /dummy/src/toga_dummy/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | from . import factory # noqa: F401 4 | 5 | __version__ = travertino._package_version(__file__, __name__) 6 | -------------------------------------------------------------------------------- /dummy/src/toga_dummy/colors.py: -------------------------------------------------------------------------------- 1 | def native_color(c): 2 | pass 3 | -------------------------------------------------------------------------------- /dummy/src/toga_dummy/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/hardware/__init__.py -------------------------------------------------------------------------------- /dummy/src/toga_dummy/plugins/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/plugins/__init__.py -------------------------------------------------------------------------------- /dummy/src/toga_dummy/resources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/resources/__init__.py -------------------------------------------------------------------------------- /dummy/src/toga_dummy/resources/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/resources/sample.png -------------------------------------------------------------------------------- /dummy/src/toga_dummy/resources/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/resources/screenshot.png -------------------------------------------------------------------------------- /dummy/src/toga_dummy/resources/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/resources/toga.png -------------------------------------------------------------------------------- /dummy/src/toga_dummy/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/dummy/src/toga_dummy/widgets/__init__.py -------------------------------------------------------------------------------- /dummy/src/toga_dummy/widgets/box.py: -------------------------------------------------------------------------------- 1 | from .base import Widget 2 | 3 | 4 | class Box(Widget): 5 | def create(self): 6 | self._action("create Box") 7 | -------------------------------------------------------------------------------- /dummy/src/toga_dummy/widgets/divider.py: -------------------------------------------------------------------------------- 1 | from .base import Widget 2 | 3 | 4 | class Divider(Widget): 5 | def create(self): 6 | self._action("create Divider") 7 | 8 | def get_direction(self): 9 | return self._get_value("direction") 10 | 11 | def set_direction(self, value): 12 | self._set_value("direction", value) 13 | -------------------------------------------------------------------------------- /dummy/src/toga_dummy/widgets/imageview.py: -------------------------------------------------------------------------------- 1 | from .base import Widget 2 | 3 | 4 | class ImageView(Widget): 5 | def create(self): 6 | self._action("create ImageView") 7 | 8 | def set_image(self, image): 9 | self._action("set image", image=image) 10 | -------------------------------------------------------------------------------- /dummy/src/toga_dummy/widgets/label.py: -------------------------------------------------------------------------------- 1 | from .base import Widget 2 | 3 | 4 | class Label(Widget): 5 | def create(self): 6 | self._action("create Label") 7 | 8 | def get_text(self): 9 | return self._get_value("text") 10 | 11 | def set_text(self, value): 12 | self._set_value("text", value) 13 | -------------------------------------------------------------------------------- /dummy/src/toga_dummy/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInput 2 | 3 | 4 | class PasswordInput(TextInput): 5 | def create(self): 6 | self._action("create PasswordInput") 7 | -------------------------------------------------------------------------------- /examples/.template/cookiecutter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "testwidget", 3 | "formal_name": "Test Widget", 4 | "widget_name": "TestWidget" 5 | } 6 | -------------------------------------------------------------------------------- /examples/.template/{{ cookiecutter.name }}/README.rst: -------------------------------------------------------------------------------- 1 | {{ cookiecutter.formal_name }} 2 | {{ "=" * cookiecutter.formal_name|length }} 3 | 4 | Test app for the {{ cookiecutter.formal_name }} widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m {{ cookiecutter.name }} 13 | -------------------------------------------------------------------------------- /examples/.template/{{ cookiecutter.name }}/{{ cookiecutter.name }}/__main__.py: -------------------------------------------------------------------------------- 1 | from {{ cookiecutter.name }}.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/.template/{{ cookiecutter.name }}/{{ cookiecutter.name }}/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/activityindicator/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/activityindicator/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/activityindicator/README.rst: -------------------------------------------------------------------------------- 1 | Activity Indicator 2 | ================== 3 | 4 | Test app for the Activity Indicator widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m activityindicator 13 | -------------------------------------------------------------------------------- /examples/activityindicator/activityindicator/__main__.py: -------------------------------------------------------------------------------- 1 | from activityindicator.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/activityindicator/activityindicator/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/beeliza/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/beeliza/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/beeliza/beeliza/__main__.py: -------------------------------------------------------------------------------- 1 | from beeliza.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/beeliza/beeliza/resources/brutus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/beeliza/beeliza/resources/brutus.png -------------------------------------------------------------------------------- /examples/beeliza/beeliza/resources/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/beeliza/beeliza/resources/user.png -------------------------------------------------------------------------------- /examples/box/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/box/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/box/README.rst: -------------------------------------------------------------------------------- 1 | Boxes example 2 | =============== 3 | 4 | Boxes example for the `Toga widget toolkit`_. 5 | The following features are present on this example: 6 | 7 | * A Box with color 8 | * Set color during runtime to different options 9 | * Reset color to default 10 | 11 | Quickstart 12 | ~~~~~~~~~~ 13 | 14 | To run this example: 15 | 16 | $ python -m box 17 | -------------------------------------------------------------------------------- /examples/box/box/__main__.py: -------------------------------------------------------------------------------- 1 | from box.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/button/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/button/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/button/button/__main__.py: -------------------------------------------------------------------------------- 1 | from button.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/button/button/resources/star.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/button/button/resources/star.png -------------------------------------------------------------------------------- /examples/canvas/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/canvas/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/canvas/README.rst: -------------------------------------------------------------------------------- 1 | Canvas 2 | ====== 3 | 4 | Test app for the Canvas widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m canvas 12 | -------------------------------------------------------------------------------- /examples/canvas/canvas/__main__.py: -------------------------------------------------------------------------------- 1 | from canvas.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/canvas/canvas/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/colors/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/colors/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/colors/README.rst: -------------------------------------------------------------------------------- 1 | colors 2 | ====== 3 | 4 | Test app to test the color abilities on widgets. 5 | Not all widgets have color support yet. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ pip install toga 13 | $ python -m colors 14 | -------------------------------------------------------------------------------- /examples/colors/colors/__main__.py: -------------------------------------------------------------------------------- 1 | from colors.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/colors/colors/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/command/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/command/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/command/README.rst: -------------------------------------------------------------------------------- 1 | Test Command 2 | ============ 3 | 4 | Test app for the Test Command widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m command 13 | -------------------------------------------------------------------------------- /examples/command/command/__main__.py: -------------------------------------------------------------------------------- 1 | from command.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/command/command/resources/brutus-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/brutus-256.png -------------------------------------------------------------------------------- /examples/command/command/resources/brutus.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/brutus.icns -------------------------------------------------------------------------------- /examples/command/command/resources/brutus.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/brutus.ico -------------------------------------------------------------------------------- /examples/command/command/resources/brutus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/brutus.png -------------------------------------------------------------------------------- /examples/command/command/resources/command.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/command.png -------------------------------------------------------------------------------- /examples/command/command/resources/cricket-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/cricket-256.png -------------------------------------------------------------------------------- /examples/command/command/resources/tiberius-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/command/command/resources/tiberius-256.png -------------------------------------------------------------------------------- /examples/date_and_time/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/date_and_time/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/date_and_time/date_and_time/__main__.py: -------------------------------------------------------------------------------- 1 | from date_and_time.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/detailedlist/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/detailedlist/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/detailedlist/README.rst: -------------------------------------------------------------------------------- 1 | Detailed List 2 | ============= 3 | 4 | Test app for the Detailed List widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m detailedlist 12 | -------------------------------------------------------------------------------- /examples/detailedlist/detailedlist/__main__.py: -------------------------------------------------------------------------------- 1 | from detailedlist.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/detailedlist/detailedlist/resources/brutus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/detailedlist/detailedlist/resources/brutus.png -------------------------------------------------------------------------------- /examples/dialogs/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/dialogs/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/dialogs/README.rst: -------------------------------------------------------------------------------- 1 | Dialogs 2 | ======= 3 | 4 | Test app for the Dialog in Main Window. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m dialogs 12 | -------------------------------------------------------------------------------- /examples/dialogs/dialogs/__main__.py: -------------------------------------------------------------------------------- 1 | from dialogs.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/dialogs/dialogs/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/divider/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/divider/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/divider/README.rst: -------------------------------------------------------------------------------- 1 | Divider example 2 | =============== 3 | 4 | Divider example for the `Toga widget toolkit`_. The following switch features are present on this example: 5 | 6 | * Horizontal and vertical dividers 7 | 8 | Quickstart 9 | ~~~~~~~~~~ 10 | 11 | To run this example: 12 | 13 | $ python -m divider 14 | -------------------------------------------------------------------------------- /examples/divider/divider/__main__.py: -------------------------------------------------------------------------------- 1 | from divider.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/documentapp/README.rst: -------------------------------------------------------------------------------- 1 | DocumentApp 2 | =========== 3 | 4 | An example DocumentApp. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m documentapp 13 | 14 | Or, pass in a file at the command line 15 | 16 | $ python -m documentapp Jabberwocky.exampledoc 17 | -------------------------------------------------------------------------------- /examples/documentapp/documentapp/__main__.py: -------------------------------------------------------------------------------- 1 | from documentapp.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/documentapp/documentapp/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/documentapp/icons/exampledoc.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/documentapp/icons/exampledoc.icns -------------------------------------------------------------------------------- /examples/documentapp/icons/exampledoc.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/documentapp/icons/exampledoc.ico -------------------------------------------------------------------------------- /examples/documentapp/icons/exampledoc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/documentapp/icons/exampledoc.png -------------------------------------------------------------------------------- /examples/examples_overview/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/examples_overview/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/examples_overview/README.rst: -------------------------------------------------------------------------------- 1 | Examples Overview 2 | ================= 3 | 4 | This example provides an overview of all other examples in a table. You can view their 5 | READMEs and run individual examples from the user interface. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ pip install toga 13 | $ python -m examples_overview 14 | -------------------------------------------------------------------------------- /examples/examples_overview/examples_overview/__main__.py: -------------------------------------------------------------------------------- 1 | from examples_overview.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/examples_overview/examples_overview/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/focus/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/focus/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/focus/focus/__main__.py: -------------------------------------------------------------------------------- 1 | from focus.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/font/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/font/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/font/README.rst: -------------------------------------------------------------------------------- 1 | Font Example 2 | ============ 3 | 4 | Test app for the Font Example widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m font 13 | -------------------------------------------------------------------------------- /examples/font/font/__main__.py: -------------------------------------------------------------------------------- 1 | from font.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/font/font/resources/ENDOR___.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/ENDOR___.ttf -------------------------------------------------------------------------------- /examples/font/font/resources/Font Awesome 5 Free-Solid-900.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/Font Awesome 5 Free-Solid-900.otf -------------------------------------------------------------------------------- /examples/font/font/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/font/font/resources/Roboto-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/Roboto-Bold.ttf -------------------------------------------------------------------------------- /examples/font/font/resources/Roboto-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/Roboto-BoldItalic.ttf -------------------------------------------------------------------------------- /examples/font/font/resources/Roboto-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/Roboto-Italic.ttf -------------------------------------------------------------------------------- /examples/font/font/resources/Roboto-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/Roboto-Regular.ttf -------------------------------------------------------------------------------- /examples/font/font/resources/font.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font/font/resources/font.png -------------------------------------------------------------------------------- /examples/font_size/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/font_size/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/font_size/README.rst: -------------------------------------------------------------------------------- 1 | Font size test 2 | ============== 3 | 4 | Test app that demonstrates font sizes. Interact with any widget to reset its font to the 5 | default size. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ pip install toga 13 | $ python -m font_size 14 | -------------------------------------------------------------------------------- /examples/font_size/font_size/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/font_size/font_size/__init__.py -------------------------------------------------------------------------------- /examples/font_size/font_size/__main__.py: -------------------------------------------------------------------------------- 1 | from font_size.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/handlers/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/handlers/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/handlers/README.rst: -------------------------------------------------------------------------------- 1 | Dialogs 2 | ======= 3 | 4 | Test app for the Dialog in Main Window. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m dialogs 12 | -------------------------------------------------------------------------------- /examples/handlers/handlers/__main__.py: -------------------------------------------------------------------------------- 1 | from handlers.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/handlers/handlers/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/hardware/README.rst: -------------------------------------------------------------------------------- 1 | Hardware 2 | ======== 3 | 4 | Test app for the hardware device features. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m hardware 13 | -------------------------------------------------------------------------------- /examples/hardware/hardware/__main__.py: -------------------------------------------------------------------------------- 1 | from hardware.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/hardware/hardware/resources/default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/hardware/hardware/resources/default.png -------------------------------------------------------------------------------- /examples/imageview/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/imageview/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/imageview/imageview/__main__.py: -------------------------------------------------------------------------------- 1 | from imageview.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/imageview/imageview/resources/pride-brutus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/imageview/imageview/resources/pride-brutus.png -------------------------------------------------------------------------------- /examples/layout/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/layout/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/layout/README.rst: -------------------------------------------------------------------------------- 1 | Layout Test 2 | =========== 3 | 4 | Test app that demonstrates adding and removing widgets from box. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m layout 13 | -------------------------------------------------------------------------------- /examples/layout/layout/__main__.py: -------------------------------------------------------------------------------- 1 | from layout.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/layout/layout/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/layout/layout/resources/tiberius.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/layout/layout/resources/tiberius.png -------------------------------------------------------------------------------- /examples/mapview/README.rst: -------------------------------------------------------------------------------- 1 | Map View 2 | ======== 3 | 4 | Test app for the Map View widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m mapview 13 | -------------------------------------------------------------------------------- /examples/mapview/mapview/__main__.py: -------------------------------------------------------------------------------- 1 | from mapview.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/mapview/mapview/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/multilinetextinput/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/multilinetextinput/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/multilinetextinput/README.rst: -------------------------------------------------------------------------------- 1 | Multiline Text Input 2 | ==================== 3 | 4 | Test app for the Multiline Text Input widget. Adds a textfield 5 | with an initial value and placeholder. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ python -m multilinetextinput 13 | -------------------------------------------------------------------------------- /examples/multilinetextinput/multilinetextinput/__main__.py: -------------------------------------------------------------------------------- 1 | from multilinetextinput.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/multilinetextinput/multilinetextinput/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/numberinput/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/numberinput/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/numberinput/README.rst: -------------------------------------------------------------------------------- 1 | Demo NumberInput 2 | ================ 3 | 4 | Test app for the Demo NumberInput widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m numberinput 13 | -------------------------------------------------------------------------------- /examples/numberinput/numberinput/__main__.py: -------------------------------------------------------------------------------- 1 | from numberinput.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/numberinput/numberinput/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/optioncontainer/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/optioncontainer/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/optioncontainer/README.rst: -------------------------------------------------------------------------------- 1 | Option Container Example 2 | ======================== 3 | 4 | Test app for the Option Container Example widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m optioncontainer 13 | -------------------------------------------------------------------------------- /examples/optioncontainer/optioncontainer/__main__.py: -------------------------------------------------------------------------------- 1 | from optioncontainer.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/optioncontainer/optioncontainer/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/passwordinput/README.rst: -------------------------------------------------------------------------------- 1 | Password Input 2 | ============== 3 | 4 | Test app for the Password Input widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m passwordinput 13 | -------------------------------------------------------------------------------- /examples/passwordinput/passwordinput/__main__.py: -------------------------------------------------------------------------------- 1 | from passwordinput.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/passwordinput/passwordinput/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/positron-django/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/positron-django/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/positron-django/src/positron/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-django/src/positron/__init__.py -------------------------------------------------------------------------------- /examples/positron-django/src/positron/__main__.py: -------------------------------------------------------------------------------- 1 | from positron.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/positron-django/src/positron/resources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-django/src/positron/resources/__init__.py -------------------------------------------------------------------------------- /examples/positron-django/src/positron/resources/positron.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-django/src/positron/resources/positron.icns -------------------------------------------------------------------------------- /examples/positron-django/src/positron/resources/positron.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-django/src/positron/resources/positron.ico -------------------------------------------------------------------------------- /examples/positron-django/src/positron/resources/positron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-django/src/positron/resources/positron.png -------------------------------------------------------------------------------- /examples/positron-django/src/positron/urls.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from django.contrib.staticfiles import views as staticfiles 3 | from django.urls import path, re_path 4 | 5 | urlpatterns = [ 6 | path("admin/", admin.site.urls), 7 | re_path(r"^static/(?P.*)$", staticfiles.serve), 8 | ] 9 | -------------------------------------------------------------------------------- /examples/positron-static/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/positron-static/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/positron-static/src/positron/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-static/src/positron/__init__.py -------------------------------------------------------------------------------- /examples/positron-static/src/positron/__main__.py: -------------------------------------------------------------------------------- 1 | from positron.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/positron-static/src/positron/resources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-static/src/positron/resources/__init__.py -------------------------------------------------------------------------------- /examples/positron-static/src/positron/resources/positron.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-static/src/positron/resources/positron.icns -------------------------------------------------------------------------------- /examples/positron-static/src/positron/resources/positron.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-static/src/positron/resources/positron.ico -------------------------------------------------------------------------------- /examples/positron-static/src/positron/resources/positron.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/positron-static/src/positron/resources/positron.png -------------------------------------------------------------------------------- /examples/positron-static/src/positron/resources/webapp/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Positron 4 | 5 | 6 | 7 |

Hello World

8 | 9 | 10 | -------------------------------------------------------------------------------- /examples/positron-static/src/positron/resources/webapp/positron.css: -------------------------------------------------------------------------------- 1 | h1 { 2 | font-family: sans-serif; 3 | } 4 | -------------------------------------------------------------------------------- /examples/progressbar/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/progressbar/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/progressbar/README.rst: -------------------------------------------------------------------------------- 1 | ProgressBar example 2 | =============== 3 | 4 | ProgressBar example for the `Toga widget toolkit`_. The following features are present on this example: 5 | 6 | * ProgressBars in running mode 7 | * ProgressBars with set values 8 | 9 | 10 | Quickstart 11 | ~~~~~~~~~~ 12 | 13 | To run this example: 14 | 15 | $ python -m progressbar 16 | -------------------------------------------------------------------------------- /examples/progressbar/progressbar/__main__.py: -------------------------------------------------------------------------------- 1 | from progressbar.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/resize/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/resize/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/resize/README.rst: -------------------------------------------------------------------------------- 1 | Resize Test 2 | =========== 3 | 4 | Test app that demonstrates resizing of widgets and windows. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m resize 13 | -------------------------------------------------------------------------------- /examples/resize/resize/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/resize/resize/__init__.py -------------------------------------------------------------------------------- /examples/resize/resize/__main__.py: -------------------------------------------------------------------------------- 1 | from resize.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/screenshot/README.rst: -------------------------------------------------------------------------------- 1 | Screenshot Generator 2 | ==================== 3 | 4 | Test app for the Screenshot Generator widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m screenshot 13 | -------------------------------------------------------------------------------- /examples/screenshot/screenshot/__main__.py: -------------------------------------------------------------------------------- 1 | from screenshot.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/brutus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/screenshot/screenshot/resources/brutus.png -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/landmark-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/screenshot/screenshot/resources/landmark-android.png -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/landmark-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/screenshot/screenshot/resources/landmark-iOS.png -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/smile-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/screenshot/screenshot/resources/smile-android.png -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/smile-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/screenshot/screenshot/resources/smile-iOS.png -------------------------------------------------------------------------------- /examples/screenshot/screenshot/resources/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/screenshot/screenshot/resources/user.png -------------------------------------------------------------------------------- /examples/scrollcontainer/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/scrollcontainer/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/scrollcontainer/README.rst: -------------------------------------------------------------------------------- 1 | Scroll Container 2 | ================ 3 | 4 | Test app for the Scroll Container widget. The app creates a box 5 | layout containing 50 labels, and adds it to a scroll container. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ python -m scrollcontainer 13 | -------------------------------------------------------------------------------- /examples/scrollcontainer/scrollcontainer/__main__.py: -------------------------------------------------------------------------------- 1 | from scrollcontainer.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/scrollcontainer/scrollcontainer/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/selection/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/selection/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/selection/selection/__main__.py: -------------------------------------------------------------------------------- 1 | from selection.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/simpleapp/README.rst: -------------------------------------------------------------------------------- 1 | Simple App 2 | ========== 3 | 4 | A demonstration of a Simple App - an app with a minimum of decoration. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m simpleapp 13 | -------------------------------------------------------------------------------- /examples/simpleapp/simpleapp/__main__.py: -------------------------------------------------------------------------------- 1 | from simpleapp.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/slider/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/slider/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/slider/slider/__main__.py: -------------------------------------------------------------------------------- 1 | from slider.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/splitcontainer/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/splitcontainer/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/splitcontainer/README.rst: -------------------------------------------------------------------------------- 1 | SplitContainer 2 | ============== 3 | 4 | Test app for the SplitContainer widget. The app provides various controls for the 5 | content and properties of the container. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ python -m splitcontainer 13 | -------------------------------------------------------------------------------- /examples/splitcontainer/splitcontainer/__main__.py: -------------------------------------------------------------------------------- 1 | from .app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/statusiconapp/README.rst: -------------------------------------------------------------------------------- 1 | Status Icon App 2 | =============== 3 | 4 | A demonstration of a App that resides in the background, placing an icon in the status 5 | bar/tray of the operating system. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ pip install toga 13 | $ python -m statusiconapp 14 | -------------------------------------------------------------------------------- /examples/statusiconapp/statusiconapp/__main__.py: -------------------------------------------------------------------------------- 1 | from statusiconapp.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/statusiconapp/statusiconapp/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/statusiconapp/statusiconapp/resources/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/statusiconapp/statusiconapp/resources/blue.png -------------------------------------------------------------------------------- /examples/statusiconapp/statusiconapp/resources/status-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/statusiconapp/statusiconapp/resources/status-icon.png -------------------------------------------------------------------------------- /examples/switch_demo/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/switch_demo/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/switch_demo/README.rst: -------------------------------------------------------------------------------- 1 | Switch 2 | ====== 3 | 4 | Test app for the Switch widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m switch_demo 13 | -------------------------------------------------------------------------------- /examples/switch_demo/switch_demo/__main__.py: -------------------------------------------------------------------------------- 1 | from switch_demo.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/switch_demo/switch_demo/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/table/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/table/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/table/README.rst: -------------------------------------------------------------------------------- 1 | Table 2 | ===== 3 | 4 | Test app for the Table widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m table 12 | -------------------------------------------------------------------------------- /examples/table/table/__main__.py: -------------------------------------------------------------------------------- 1 | from table.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/table/table/icons/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/table/table/icons/green.png -------------------------------------------------------------------------------- /examples/table/table/icons/red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/table/table/icons/red.png -------------------------------------------------------------------------------- /examples/table_source/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/table_source/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/table_source/table_source/__main__.py: -------------------------------------------------------------------------------- 1 | from table_source.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/textinput/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/textinput/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/textinput/README.rst: -------------------------------------------------------------------------------- 1 | Text Input 2 | ======= 3 | 4 | Test app for the Text Input widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m textinput 12 | -------------------------------------------------------------------------------- /examples/textinput/textinput/__main__.py: -------------------------------------------------------------------------------- 1 | from textinput.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/textinput/textinput/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /examples/tree/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tree/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tree/README.rst: -------------------------------------------------------------------------------- 1 | Tree 2 | ==== 3 | 4 | Test app for the Tree widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m tree 12 | -------------------------------------------------------------------------------- /examples/tree/tree/__main__.py: -------------------------------------------------------------------------------- 1 | from tree.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/tree_source/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tree_source/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tree_source/tree_source/__main__.py: -------------------------------------------------------------------------------- 1 | from tree_source.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/tree_source/tree_source/resources/file.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tree_source/tree_source/resources/file.icns -------------------------------------------------------------------------------- /examples/tree_source/tree_source/resources/file.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tree_source/tree_source/resources/file.ico -------------------------------------------------------------------------------- /examples/tree_source/tree_source/resources/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tree_source/tree_source/resources/file.png -------------------------------------------------------------------------------- /examples/tree_source/tree_source/resources/folder.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tree_source/tree_source/resources/folder.icns -------------------------------------------------------------------------------- /examples/tree_source/tree_source/resources/folder.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tree_source/tree_source/resources/folder.ico -------------------------------------------------------------------------------- /examples/tree_source/tree_source/resources/folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tree_source/tree_source/resources/folder.png -------------------------------------------------------------------------------- /examples/tutorial0/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tutorial0/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tutorial0/README.rst: -------------------------------------------------------------------------------- 1 | Tutorial 0 2 | ========== 3 | 4 | Tutorial 0 for the `Toga widget toolkit`_. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m tutorial 12 | -------------------------------------------------------------------------------- /examples/tutorial0/tutorial/__main__.py: -------------------------------------------------------------------------------- 1 | from tutorial.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/tutorial1/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tutorial1/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tutorial1/README.rst: -------------------------------------------------------------------------------- 1 | Tutorial 1 2 | ========== 3 | 4 | Tutorial 1 for the `Toga widget toolkit`_. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m tutorial 12 | -------------------------------------------------------------------------------- /examples/tutorial1/tutorial/__main__.py: -------------------------------------------------------------------------------- 1 | from tutorial.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/tutorial2/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tutorial2/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tutorial2/README.rst: -------------------------------------------------------------------------------- 1 | Tutorial 2 2 | ========== 3 | 4 | Tutorial 2 for the `Toga widget toolkit`_. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m tutorial 12 | -------------------------------------------------------------------------------- /examples/tutorial2/tutorial/__main__.py: -------------------------------------------------------------------------------- 1 | from tutorial.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/tutorial2/tutorial/icons/brutus-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tutorial2/tutorial/icons/brutus-256.png -------------------------------------------------------------------------------- /examples/tutorial2/tutorial/icons/brutus.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tutorial2/tutorial/icons/brutus.icns -------------------------------------------------------------------------------- /examples/tutorial2/tutorial/icons/brutus.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tutorial2/tutorial/icons/brutus.ico -------------------------------------------------------------------------------- /examples/tutorial2/tutorial/icons/cricket-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/examples/tutorial2/tutorial/icons/cricket-72.png -------------------------------------------------------------------------------- /examples/tutorial3/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tutorial3/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tutorial3/README.rst: -------------------------------------------------------------------------------- 1 | Tutorial 3 2 | ========== 3 | 4 | Tutorial 3 for the `Toga widget toolkit`_. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m tutorial 12 | -------------------------------------------------------------------------------- /examples/tutorial3/tutorial/__main__.py: -------------------------------------------------------------------------------- 1 | from tutorial.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/tutorial4/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/tutorial4/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/tutorial4/README.rst: -------------------------------------------------------------------------------- 1 | Tutorial 4 2 | ========== 3 | 4 | Tutorial 4 for the `Toga widget toolkit`_. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ python -m tutorial 12 | -------------------------------------------------------------------------------- /examples/tutorial4/tutorial/__main__.py: -------------------------------------------------------------------------------- 1 | from tutorial.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/webview/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/webview/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/webview/README.rst: -------------------------------------------------------------------------------- 1 | WebView demo source 2 | =================== 3 | 4 | An example of using a WebView with buttons that exercise all the WebView 5 | features. 6 | 7 | Quickstart 8 | ~~~~~~~~~~ 9 | 10 | To run this example: 11 | 12 | $ python -m webview 13 | -------------------------------------------------------------------------------- /examples/webview/webview/__main__.py: -------------------------------------------------------------------------------- 1 | from webview.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/window/CHANGELOG: -------------------------------------------------------------------------------- 1 | See Toga releases for change notes. 2 | -------------------------------------------------------------------------------- /examples/window/LICENSE: -------------------------------------------------------------------------------- 1 | Released under the same license as Toga. See the root of the Toga repository for details. 2 | -------------------------------------------------------------------------------- /examples/window/README.rst: -------------------------------------------------------------------------------- 1 | Window Demo 2 | =========== 3 | 4 | Test app for the Window Demo widget. 5 | 6 | Quickstart 7 | ~~~~~~~~~~ 8 | 9 | To run this example: 10 | 11 | $ pip install toga 12 | $ python -m window 13 | -------------------------------------------------------------------------------- /examples/window/window/__main__.py: -------------------------------------------------------------------------------- 1 | from window.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /examples/window/window/resources/README: -------------------------------------------------------------------------------- 1 | Put any icons or images in this directory. 2 | -------------------------------------------------------------------------------- /gtk/src/toga_gtk/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | __version__ = travertino._package_version(__file__, __name__) 4 | -------------------------------------------------------------------------------- /gtk/src/toga_gtk/colors.py: -------------------------------------------------------------------------------- 1 | CACHE = {} 2 | 3 | 4 | def native_color(c): 5 | try: 6 | color = CACHE[c] 7 | except KeyError: 8 | color = (c.rgba.r / 255, c.rgba.g / 255, c.rgba.b / 255, c.rgba.a) 9 | CACHE[c] = color 10 | 11 | return color 12 | -------------------------------------------------------------------------------- /gtk/src/toga_gtk/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/gtk/src/toga_gtk/hardware/__init__.py -------------------------------------------------------------------------------- /gtk/src/toga_gtk/libs/__init__.py: -------------------------------------------------------------------------------- 1 | from .fontconfig import FontConfig # noqa: F401, F403 2 | from .gtk import * # noqa: F401, F403 3 | from .styles import * # noqa: F401, F403 4 | from .utils import * # noqa: F401, F403 5 | -------------------------------------------------------------------------------- /gtk/src/toga_gtk/resources/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/gtk/src/toga_gtk/resources/toga.png -------------------------------------------------------------------------------- /gtk/src/toga_gtk/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/gtk/src/toga_gtk/widgets/__init__.py -------------------------------------------------------------------------------- /gtk/src/toga_gtk/widgets/box.py: -------------------------------------------------------------------------------- 1 | from ..libs import Gtk 2 | from .base import Widget 3 | 4 | 5 | class Box(Widget): 6 | def create(self): 7 | self.min_width = None 8 | self.min_height = None 9 | self.native = Gtk.Box() 10 | -------------------------------------------------------------------------------- /gtk/src/toga_gtk/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInput 2 | 3 | 4 | class PasswordInput(TextInput): 5 | def create(self): 6 | super().create() 7 | self.native.set_visibility(False) 8 | -------------------------------------------------------------------------------- /gtk/tests_backend/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/gtk/tests_backend/__init__.py -------------------------------------------------------------------------------- /gtk/tests_backend/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/gtk/tests_backend/hardware/__init__.py -------------------------------------------------------------------------------- /gtk/tests_backend/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/gtk/tests_backend/widgets/__init__.py -------------------------------------------------------------------------------- /gtk/tests_backend/widgets/activityindicator.py: -------------------------------------------------------------------------------- 1 | from toga_gtk.libs import Gtk 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class ActivityIndicatorProbe(SimpleProbe): 7 | native_class = Gtk.Spinner 8 | -------------------------------------------------------------------------------- /gtk/tests_backend/widgets/box.py: -------------------------------------------------------------------------------- 1 | from toga_gtk.libs import Gtk 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class BoxProbe(SimpleProbe): 7 | native_class = Gtk.Box 8 | -------------------------------------------------------------------------------- /gtk/tests_backend/widgets/divider.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from toga_gtk.libs import GTK_VERSION, Gtk 4 | 5 | from .base import SimpleProbe 6 | 7 | 8 | class DividerProbe(SimpleProbe): 9 | native_class = Gtk.Separator 10 | 11 | if GTK_VERSION >= (4, 0, 0): 12 | pytest.skip("GTK4 doesn't support a divider yet") 13 | -------------------------------------------------------------------------------- /gtk/tests_backend/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInputProbe 2 | 3 | 4 | class PasswordInputProbe(TextInputProbe): 5 | pass 6 | -------------------------------------------------------------------------------- /iOS/src/toga_iOS/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | __version__ = travertino._package_version(__file__, __name__) 4 | -------------------------------------------------------------------------------- /iOS/src/toga_iOS/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/src/toga_iOS/hardware/__init__.py -------------------------------------------------------------------------------- /iOS/src/toga_iOS/libs/__init__.py: -------------------------------------------------------------------------------- 1 | from .av_foundation import * # NOQA 2 | from .core_graphics import * # NOQA 3 | from .core_location import * # NOQA 4 | from .foundation import * # NOQA 5 | from .mapkit import * # NOQA 6 | from .uikit import * # NOQA 7 | from .webkit import * # NOQA 8 | -------------------------------------------------------------------------------- /iOS/src/toga_iOS/resources/optioncontainer-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/src/toga_iOS/resources/optioncontainer-tab.png -------------------------------------------------------------------------------- /iOS/src/toga_iOS/resources/toga.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/src/toga_iOS/resources/toga.icns -------------------------------------------------------------------------------- /iOS/src/toga_iOS/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/src/toga_iOS/widgets/__init__.py -------------------------------------------------------------------------------- /iOS/src/toga_iOS/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from toga_iOS.widgets.textinput import TextInput 2 | 3 | 4 | class PasswordInput(TextInput): 5 | def create(self): 6 | super().create() 7 | self.native.setSecureTextEntry(True) 8 | -------------------------------------------------------------------------------- /iOS/tests_backend/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/tests_backend/__init__.py -------------------------------------------------------------------------------- /iOS/tests_backend/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/tests_backend/hardware/__init__.py -------------------------------------------------------------------------------- /iOS/tests_backend/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/iOS/tests_backend/widgets/__init__.py -------------------------------------------------------------------------------- /iOS/tests_backend/widgets/activityindicator.py: -------------------------------------------------------------------------------- 1 | from toga_iOS.libs import UIActivityIndicatorView 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class ActivityIndicatorProbe(SimpleProbe): 7 | native_class = UIActivityIndicatorView 8 | -------------------------------------------------------------------------------- /iOS/tests_backend/widgets/box.py: -------------------------------------------------------------------------------- 1 | from toga_iOS.libs import UIView 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class BoxProbe(SimpleProbe): 7 | native_class = UIView 8 | -------------------------------------------------------------------------------- /iOS/tests_backend/widgets/divider.py: -------------------------------------------------------------------------------- 1 | from toga_iOS.libs import UIView 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class DividerProbe(SimpleProbe): 7 | native_class = UIView 8 | -------------------------------------------------------------------------------- /iOS/tests_backend/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInputProbe 2 | 3 | 4 | class PasswordInputProbe(TextInputProbe): 5 | pass 6 | -------------------------------------------------------------------------------- /positron/src/positron/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/positron/src/positron/__init__.py -------------------------------------------------------------------------------- /testbed/CHANGELOG: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | 0.0.1 5 | ~~~~~ 6 | 7 | * Added testbed app. 8 | -------------------------------------------------------------------------------- /testbed/icons/testbed-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-1024.png -------------------------------------------------------------------------------- /testbed/icons/testbed-120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-120.png -------------------------------------------------------------------------------- /testbed/icons/testbed-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-128.png -------------------------------------------------------------------------------- /testbed/icons/testbed-152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-152.png -------------------------------------------------------------------------------- /testbed/icons/testbed-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-16.png -------------------------------------------------------------------------------- /testbed/icons/testbed-167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-167.png -------------------------------------------------------------------------------- /testbed/icons/testbed-180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-180.png -------------------------------------------------------------------------------- /testbed/icons/testbed-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-20.png -------------------------------------------------------------------------------- /testbed/icons/testbed-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-256.png -------------------------------------------------------------------------------- /testbed/icons/testbed-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-29.png -------------------------------------------------------------------------------- /testbed/icons/testbed-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-32.png -------------------------------------------------------------------------------- /testbed/icons/testbed-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-40.png -------------------------------------------------------------------------------- /testbed/icons/testbed-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-512.png -------------------------------------------------------------------------------- /testbed/icons/testbed-58.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-58.png -------------------------------------------------------------------------------- /testbed/icons/testbed-60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-60.png -------------------------------------------------------------------------------- /testbed/icons/testbed-64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-64.png -------------------------------------------------------------------------------- /testbed/icons/testbed-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-72.png -------------------------------------------------------------------------------- /testbed/icons/testbed-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-76.png -------------------------------------------------------------------------------- /testbed/icons/testbed-80.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-80.png -------------------------------------------------------------------------------- /testbed/icons/testbed-87.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-87.png -------------------------------------------------------------------------------- /testbed/icons/testbed-round-144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-round-144.png -------------------------------------------------------------------------------- /testbed/icons/testbed-round-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-round-192.png -------------------------------------------------------------------------------- /testbed/icons/testbed-round-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-round-48.png -------------------------------------------------------------------------------- /testbed/icons/testbed-round-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-round-72.png -------------------------------------------------------------------------------- /testbed/icons/testbed-round-96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-round-96.png -------------------------------------------------------------------------------- /testbed/icons/testbed-square-144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-square-144.png -------------------------------------------------------------------------------- /testbed/icons/testbed-square-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-square-192.png -------------------------------------------------------------------------------- /testbed/icons/testbed-square-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-square-48.png -------------------------------------------------------------------------------- /testbed/icons/testbed-square-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-square-72.png -------------------------------------------------------------------------------- /testbed/icons/testbed-square-96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed-square-96.png -------------------------------------------------------------------------------- /testbed/icons/testbed.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed.icns -------------------------------------------------------------------------------- /testbed/icons/testbed.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed.ico -------------------------------------------------------------------------------- /testbed/icons/testbed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/icons/testbed.png -------------------------------------------------------------------------------- /testbed/src/testbed/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/__init__.py -------------------------------------------------------------------------------- /testbed/src/testbed/__main__.py: -------------------------------------------------------------------------------- 1 | from testbed.app import main 2 | 3 | if __name__ == "__main__": 4 | main().main_loop() 5 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/__init__.py -------------------------------------------------------------------------------- /testbed/src/testbed/resources/alt-icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/alt-icon.icns -------------------------------------------------------------------------------- /testbed/src/testbed/resources/alt-icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/alt-icon.ico -------------------------------------------------------------------------------- /testbed/src/testbed/resources/alt-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/alt-icon.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/arc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/arc.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/bezier_curve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/bezier_curve.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/closed_path_context.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/closed_path_context.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/ellipse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/ellipse.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/ellipse_path.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/ellipse_path.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/fill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/fill.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/fill_context.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/fill_context.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/multiline_text-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/multiline_text-android.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/multiline_text-gtk-wayland.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/multiline_text-gtk-wayland.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/multiline_text-gtk-x11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/multiline_text-gtk-x11.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/multiline_text-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/multiline_text-iOS.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/multiline_text-macOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/multiline_text-macOS.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/multiline_text-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/multiline_text-winforms.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/paths.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/paths.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/quadratic_curve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/quadratic_curve.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/rect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/rect.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/stroke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/stroke.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/stroke_context.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/stroke_context.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/transforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/transforms.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/transparency.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/transparency.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/write_text-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/write_text-android.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/write_text-gtk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/write_text-gtk.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/write_text-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/write_text-iOS.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/write_text-macOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/write_text-macOS.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/canvas/write_text-winforms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/canvas/write_text-winforms.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/Corrupted.ttf: -------------------------------------------------------------------------------- 1 | This is not a font file. 2 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/DroidSerif-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/DroidSerif-Bold.ttf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/DroidSerif-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/DroidSerif-Regular.ttf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/ENDOR___.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/ENDOR___.ttf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/Font Awesome 5 Free-Solid-900.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/Font Awesome 5 Free-Solid-900.otf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/Roboto-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/Roboto-Bold.ttf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/Roboto-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/Roboto-BoldItalic.ttf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/fonts/Roboto-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/fonts/Roboto-Italic.ttf -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/bad-32.png: -------------------------------------------------------------------------------- 1 | This is not a png file. 2 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/bad-72.png: -------------------------------------------------------------------------------- 1 | This is not a png file. 2 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/bad.icns: -------------------------------------------------------------------------------- 1 | This is not an icns file. 2 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/bad.ico: -------------------------------------------------------------------------------- 1 | This is not an ico file. 2 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/bad.png: -------------------------------------------------------------------------------- 1 | This is not a png file. 2 | -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/blue.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/green-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/green-16.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/green-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/green-32.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/green-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/green-72.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/green.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/green.icns -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/green.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/green.ico -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/green.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/orange.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/orange.ico -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/red-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/red-16.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/red-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/red-32.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/red-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/red-72.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/red.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/red.icns -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/red.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/red.ico -------------------------------------------------------------------------------- /testbed/src/testbed/resources/icons/red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/icons/red.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/logo-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/logo-android.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/logo-iOS.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/logo-iOS.icns -------------------------------------------------------------------------------- /testbed/src/testbed/resources/logo-linux-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/logo-linux-32.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/logo-linux-72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/logo-linux-72.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/logo-macOS.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/logo-macOS.icns -------------------------------------------------------------------------------- /testbed/src/testbed/resources/logo-windows.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/logo-windows.ico -------------------------------------------------------------------------------- /testbed/src/testbed/resources/new-tab-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/new-tab-android.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/new-tab-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/new-tab-iOS.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/photo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/photo.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/sample.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/tab-icon-1-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/tab-icon-1-android.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/tab-icon-1-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/tab-icon-1-iOS.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/tab-icon-2-android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/tab-icon-2-android.png -------------------------------------------------------------------------------- /testbed/src/testbed/resources/tab-icon-2-iOS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/src/testbed/resources/tab-icon-2-iOS.png -------------------------------------------------------------------------------- /testbed/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/tests/__init__.py -------------------------------------------------------------------------------- /testbed/tests/app/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/tests/app/__init__.py -------------------------------------------------------------------------------- /testbed/tests/app/docs/broken.testbed: -------------------------------------------------------------------------------- 1 | A broken testbed document. 2 | -------------------------------------------------------------------------------- /testbed/tests/app/docs/example.testbed: -------------------------------------------------------------------------------- 1 | An example testbed document. 2 | -------------------------------------------------------------------------------- /testbed/tests/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/tests/hardware/__init__.py -------------------------------------------------------------------------------- /testbed/tests/test_command.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from toga import Command 4 | 5 | 6 | async def test_unknown_system_command(app): 7 | """Attempting to create an unknown standard command raises an error.""" 8 | with pytest.raises(ValueError, match=r"Unknown standard command 'mystery'"): 9 | Command.standard(app, "mystery") 10 | -------------------------------------------------------------------------------- /testbed/tests/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/tests/widgets/__init__.py -------------------------------------------------------------------------------- /testbed/tests/widgets/probe.py: -------------------------------------------------------------------------------- 1 | from importlib import import_module 2 | 3 | 4 | def get_probe(widget): 5 | name = type(widget).__name__ 6 | module = import_module(f"tests_backend.widgets.{name.lower()}") 7 | return getattr(module, f"{name}Probe")(widget) 8 | -------------------------------------------------------------------------------- /testbed/tests/window/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/testbed/tests/window/__init__.py -------------------------------------------------------------------------------- /textual/src/toga_textual/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | __version__ = travertino._package_version(__file__, __name__) 4 | -------------------------------------------------------------------------------- /textual/src/toga_textual/fonts.py: -------------------------------------------------------------------------------- 1 | class Font: 2 | def __init__(*args, **kwargs): ... 3 | -------------------------------------------------------------------------------- /textual/src/toga_textual/icons.py: -------------------------------------------------------------------------------- 1 | class Icon: 2 | EXTENSIONS = [".png"] 3 | SIZES = None 4 | 5 | def __init__(self, interface, path): 6 | super().__init__() 7 | self.interface = interface 8 | self.path = path 9 | -------------------------------------------------------------------------------- /textual/src/toga_textual/resources/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/src/toga_textual/resources/toga.png -------------------------------------------------------------------------------- /textual/src/toga_textual/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/src/toga_textual/widgets/__init__.py -------------------------------------------------------------------------------- /textual/tests_backend/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/__init__.py -------------------------------------------------------------------------------- /textual/tests_backend/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/app.py -------------------------------------------------------------------------------- /textual/tests_backend/images.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/images.py -------------------------------------------------------------------------------- /textual/tests_backend/probe.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/probe.py -------------------------------------------------------------------------------- /textual/tests_backend/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/widgets/__init__.py -------------------------------------------------------------------------------- /textual/tests_backend/widgets/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/widgets/base.py -------------------------------------------------------------------------------- /textual/tests_backend/widgets/box.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/widgets/box.py -------------------------------------------------------------------------------- /textual/tests_backend/widgets/button.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/textual/tests_backend/widgets/button.py -------------------------------------------------------------------------------- /travertino/src/travertino/properties/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/travertino/src/travertino/properties/__init__.py -------------------------------------------------------------------------------- /travertino/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/travertino/tests/__init__.py -------------------------------------------------------------------------------- /travertino/tests/colors/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/travertino/tests/colors/__init__.py -------------------------------------------------------------------------------- /web/src/toga_web/__init__.py: -------------------------------------------------------------------------------- 1 | import travertino 2 | 3 | __version__ = travertino._package_version(__file__, __name__) 4 | -------------------------------------------------------------------------------- /web/src/toga_web/fonts.py: -------------------------------------------------------------------------------- 1 | # Fonts are implemented via Pack.__css__, so this class doesn't need to do anything. 2 | class Font: 3 | def __init__(self, *args, **kwargs): 4 | pass 5 | -------------------------------------------------------------------------------- /web/src/toga_web/icons.py: -------------------------------------------------------------------------------- 1 | class Icon: 2 | EXTENSIONS = [".png", ".bmp", ".ico"] 3 | SIZES = None 4 | 5 | def __init__(self, interface, path): 6 | self.interface = interface 7 | self.path = path 8 | -------------------------------------------------------------------------------- /web/src/toga_web/resources/toga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/web/src/toga_web/resources/toga.png -------------------------------------------------------------------------------- /web/src/toga_web/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/web/src/toga_web/widgets/__init__.py -------------------------------------------------------------------------------- /web/src/toga_web/widgets/box.py: -------------------------------------------------------------------------------- 1 | from .base import Widget 2 | 3 | 4 | class Box(Widget): 5 | def create(self): 6 | self.native = self._create_native_widget("div", classes=["container"]) 7 | 8 | def add_child(self, child): 9 | self.native.appendChild(child.native) 10 | -------------------------------------------------------------------------------- /web/src/toga_web/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInput 2 | 3 | 4 | class PasswordInput(TextInput): 5 | def create(self): 6 | super().create() 7 | self.native.setAttribute("type", "password") 8 | 9 | def is_valid(self): 10 | self.interface.factory.not_implemented("PasswordInput.is_valid()") 11 | return True 12 | -------------------------------------------------------------------------------- /winforms/src/toga_winforms/hardware/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/hardware/__init__.py -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/WebView2/Microsoft.Web.WebView2.Core.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/libs/WebView2/Microsoft.Web.WebView2.Core.dll -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/WebView2/Microsoft.Web.WebView2.WinForms.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/libs/WebView2/Microsoft.Web.WebView2.WinForms.dll -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/WebView2/runtimes/win-arm64/native/WebView2Loader.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/libs/WebView2/runtimes/win-arm64/native/WebView2Loader.dll -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/WebView2/runtimes/win-x64/native/WebView2Loader.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/libs/WebView2/runtimes/win-x64/native/WebView2Loader.dll -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/WebView2/runtimes/win-x86/native/WebView2Loader.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/libs/WebView2/runtimes/win-x86/native/WebView2Loader.dll -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/libs/__init__.py -------------------------------------------------------------------------------- /winforms/src/toga_winforms/libs/shcore.py: -------------------------------------------------------------------------------- 1 | from ctypes import HRESULT, POINTER, windll, wintypes 2 | 3 | GetScaleFactorForMonitor = windll.shcore.GetScaleFactorForMonitor 4 | GetScaleFactorForMonitor.restype = HRESULT 5 | GetScaleFactorForMonitor.argtypes = [wintypes.HMONITOR, POINTER(wintypes.UINT)] 6 | -------------------------------------------------------------------------------- /winforms/src/toga_winforms/resources/toga.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/resources/toga.ico -------------------------------------------------------------------------------- /winforms/src/toga_winforms/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/src/toga_winforms/widgets/__init__.py -------------------------------------------------------------------------------- /winforms/src/toga_winforms/widgets/box.py: -------------------------------------------------------------------------------- 1 | import System.Windows.Forms as WinForms 2 | 3 | from toga.colors import TRANSPARENT 4 | 5 | from .base import Widget 6 | 7 | 8 | class Box(Widget): 9 | def create(self): 10 | self.native = WinForms.Panel() 11 | self._default_background_color = TRANSPARENT 12 | -------------------------------------------------------------------------------- /winforms/src/toga_winforms/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInput 2 | 3 | 4 | class PasswordInput(TextInput): 5 | def create(self): 6 | super().create() 7 | self.native.UseSystemPasswordChar = True 8 | -------------------------------------------------------------------------------- /winforms/tests_backend/__init__.py: -------------------------------------------------------------------------------- 1 | import toga_winforms # NOQA: F401 2 | -------------------------------------------------------------------------------- /winforms/tests_backend/widgets/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beeware/toga/5895501bd7ac9229858910e4f4f752d2a5a94f50/winforms/tests_backend/widgets/__init__.py -------------------------------------------------------------------------------- /winforms/tests_backend/widgets/box.py: -------------------------------------------------------------------------------- 1 | import System.Windows.Forms 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class BoxProbe(SimpleProbe): 7 | native_class = System.Windows.Forms.Panel 8 | -------------------------------------------------------------------------------- /winforms/tests_backend/widgets/divider.py: -------------------------------------------------------------------------------- 1 | import System.Windows.Forms 2 | 3 | from .base import SimpleProbe 4 | 5 | 6 | class DividerProbe(SimpleProbe): 7 | native_class = System.Windows.Forms.Label 8 | -------------------------------------------------------------------------------- /winforms/tests_backend/widgets/passwordinput.py: -------------------------------------------------------------------------------- 1 | from .textinput import TextInputProbe 2 | 3 | 4 | class PasswordInputProbe(TextInputProbe): 5 | pass 6 | --------------------------------------------------------------------------------