Form Widgets for EBS Kivy GUIs and Widgets
==========================================
[](https://github.com/chintal/ebs-widgetset-kivy/actions)
This library provides a collection of reusable widgets and pure python
widget-infrastructure. These are used internally by the EBS GUI stack.
Most things here are trivially reusable and easily replicated in kv
directly.
It is unlikely you'd ever want to use this library directly. In most
cases, it would be simpler to just use this library as a collection of
examples and reimplement elements as needed.
I'm just parcelling it out into its own package for convenience and to
be able to publish other more complex widgets. Other EBS kivy widgets
assume that this library is available, and when they do, the dependency
will be explicit in the other widget's setup.py.
See https://kivy-garden.github.io/flower/ for the rendered flower docs.
Please see the garden [instructions](https://kivy-garden.github.io) for
how to use kivy garden flowers.
Why Pure Python
---------------
EBS widgets are generally designed to be used in a context that has a
twisted reactor, and need to interact with existing twisted codebases.
kv can certainly do the job in most (if not all) cases, but I find it
more comfortable having everything in python.
Doing this does have its drawbacks :
- It results in much more verbose code.
- It is entirely possible it is slower than kv (I have not checked)
- Getting good examples is harder, and the chorus of 'Use kv instead'
is unavoidable.
It does have (mostly subjective) advantages too, though :
- Not having to think in kv, especially when the gui is only a small
part of a much larger application and a lot of the gui is dynamically
generated.
- Explicit is better than implicit. Being able to easily look through
the bindings has made tracking down strange behaviors easier.
Library Contents
----------------
The core widget infrastructure provided by this library includes:
- Colors :
- Color Manipulation Utilities
- color_set_alpha
- Gradient
- GuiPalette class
- BackgroundColorMixin and its many derivatives:
- ColorBoxLayout
- RoundedColorBoxLayout
- other color primitives to be added as needed
- Labels :
- WrappingLabel
- ColorLabel
- SelfScalingLabel
- SelfScalingColorLabel
- Images :
- SizeProofImage
- BleedImage
- Buttons :
- BleedImageButton
- RoundedBleedImageButton
- Animations :
- CompositeAnimationManager
Derived EBS Kivy Widgets
------------------------
Published Derived Widgets
- [MarqueeLabel](https://github.com/ebs-universe/kivy_garden.ebs.marquee)
- [CefBrowser](https://github.com/ebs-universe/kivy_garden.ebs.cefkivy)
- [Clocks](https://github.com/ebs-universe/kivy_garden.ebs.clocks)
- SimpleDigitalClock
- [ImageGallery](https://github.com/ebs-universe/kivy_garden.ebs.gallery)
- [PDFPlayer](https://github.com/ebs-universe/kivy_garden.ebs.pdfplayer)
Unrelated other widgets (no kivy_garden.ebs dependency)
- [ProgressSpinner](https://github.com/ebs-universe/kivy_garden.ebs.progressspinner)
CI
--
Every push or pull request run the [GitHub Action](https://github.com/kivy-garden/flower/actions) CI.
It tests the code on various OS and also generates wheels that can be released on PyPI upon a
tag. Docs are also generated and uploaded to the repo as well as artifacts of the CI.
TODO
-------
* add your code
Contributing
--------------
Check out our [contribution guide](CONTRIBUTING.md) and feel free to improve the flower.
License
---------
This software is released under the terms of the MIT License.
Please see the [LICENSE.txt](LICENSE.txt) file.
How to release
===============
See the garden [instructions](https://kivy-garden.github.io/#makingareleaseforyourflower) for how to make a new release.
Raw data
{
"_id": null,
"home_page": "https://github.com/ebs-universe/kivy_garden.ebs.forms",
"name": "kivy-garden.ebs.forms",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "Kivy kivy-garden",
"author": "Chintalagiri Shashank",
"author_email": "shashank.chintalagiri@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/95/48/757a9c2c5b68979098ee0ff54738f686b75e9963d6c30d771a7f281d2073/kivy_garden_ebs_forms-1.1.1.tar.gz",
"platform": null,
"description": "Form Widgets for EBS Kivy GUIs and Widgets\n==========================================\n\n[](https://github.com/chintal/ebs-widgetset-kivy/actions)\n\nThis library provides a collection of reusable widgets and pure python \nwidget-infrastructure. These are used internally by the EBS GUI stack. \nMost things here are trivially reusable and easily replicated in kv \ndirectly. \n\nIt is unlikely you'd ever want to use this library directly. In most \ncases, it would be simpler to just use this library as a collection of \nexamples and reimplement elements as needed.\n\nI'm just parcelling it out into its own package for convenience and to \nbe able to publish other more complex widgets. Other EBS kivy widgets \nassume that this library is available, and when they do, the dependency \nwill be explicit in the other widget's setup.py.\n\nSee https://kivy-garden.github.io/flower/ for the rendered flower docs.\n\nPlease see the garden [instructions](https://kivy-garden.github.io) for \nhow to use kivy garden flowers.\n\n\nWhy Pure Python\n---------------\n\nEBS widgets are generally designed to be used in a context that has a \ntwisted reactor, and need to interact with existing twisted codebases. \nkv can certainly do the job in most (if not all) cases, but I find it \nmore comfortable having everything in python. \n\nDoing this does have its drawbacks : \n\n - It results in much more verbose code.\n - It is entirely possible it is slower than kv (I have not checked)\n - Getting good examples is harder, and the chorus of 'Use kv instead' \n is unavoidable.\n\nIt does have (mostly subjective) advantages too, though :\n\n - Not having to think in kv, especially when the gui is only a small \n part of a much larger application and a lot of the gui is dynamically \n generated.\n - Explicit is better than implicit. Being able to easily look through\n the bindings has made tracking down strange behaviors easier. \n \n\nLibrary Contents\n----------------\n\nThe core widget infrastructure provided by this library includes:\n\n - Colors :\n - Color Manipulation Utilities\n - color_set_alpha\n - Gradient\n - GuiPalette class\n - BackgroundColorMixin and its many derivatives:\n - ColorBoxLayout\n - RoundedColorBoxLayout\n - other color primitives to be added as needed\n - Labels : \n - WrappingLabel\n - ColorLabel\n - SelfScalingLabel\n - SelfScalingColorLabel\n - Images :\n - SizeProofImage\n - BleedImage\n - Buttons : \n - BleedImageButton\n - RoundedBleedImageButton\n - Animations : \n - CompositeAnimationManager\n \n\nDerived EBS Kivy Widgets \n------------------------\n\nPublished Derived Widgets\n\n - [MarqueeLabel](https://github.com/ebs-universe/kivy_garden.ebs.marquee)\n - [CefBrowser](https://github.com/ebs-universe/kivy_garden.ebs.cefkivy)\n - [Clocks](https://github.com/ebs-universe/kivy_garden.ebs.clocks)\n - SimpleDigitalClock\n - [ImageGallery](https://github.com/ebs-universe/kivy_garden.ebs.gallery)\n - [PDFPlayer](https://github.com/ebs-universe/kivy_garden.ebs.pdfplayer)\n\nUnrelated other widgets (no kivy_garden.ebs dependency)\n\n - [ProgressSpinner](https://github.com/ebs-universe/kivy_garden.ebs.progressspinner)\n\nCI\n--\n\nEvery push or pull request run the [GitHub Action](https://github.com/kivy-garden/flower/actions) CI.\nIt tests the code on various OS and also generates wheels that can be released on PyPI upon a\ntag. Docs are also generated and uploaded to the repo as well as artifacts of the CI.\n\n\nTODO\n-------\n\n* add your code\n\nContributing\n--------------\n\nCheck out our [contribution guide](CONTRIBUTING.md) and feel free to improve the flower.\n\nLicense\n---------\n\nThis software is released under the terms of the MIT License.\nPlease see the [LICENSE.txt](LICENSE.txt) file.\n\nHow to release\n===============\n\nSee the garden [instructions](https://kivy-garden.github.io/#makingareleaseforyourflower) for how to make a new release.\n",
"bugtrack_url": null,
"license": null,
"summary": "Reusable form widgets",
"version": "1.1.1",
"project_urls": {
"Bug Reports": "https://github.com/ebs-universe/kivy_garden.ebs.forms/issues",
"Homepage": "https://github.com/ebs-universe/kivy_garden.ebs.forms",
"Source": "https://github.com/ebs-universe/kivy_garden.ebs.forms"
},
"split_keywords": [
"kivy",
"kivy-garden"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9548757a9c2c5b68979098ee0ff54738f686b75e9963d6c30d771a7f281d2073",
"md5": "933c838fcada67381a215f4cf2cba485",
"sha256": "86815e03597fc909673ef7c619adc5d26229ccb6f33c270fe51275cf05ef495f"
},
"downloads": -1,
"filename": "kivy_garden_ebs_forms-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "933c838fcada67381a215f4cf2cba485",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15850,
"upload_time": "2025-10-20T08:46:18",
"upload_time_iso_8601": "2025-10-20T08:46:18.066489Z",
"url": "https://files.pythonhosted.org/packages/95/48/757a9c2c5b68979098ee0ff54738f686b75e9963d6c30d771a7f281d2073/kivy_garden_ebs_forms-1.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-20 08:46:18",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ebs-universe",
"github_project": "kivy_garden.ebs.forms",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "kivy-garden.ebs.forms"
}