An advanced kivy file browser.
Project description
See https://kivy-garden.github.io/filebrowser/ for the rendered filebrowser docs.
FileBrowser
The FileBrowser widget is an advanced file browser. You use it
similarly to FileChooser usage.
It provides a shortcut bar with links to special and system directories. When touching next to a shortcut in the links bar, it'll expand and show all the directories within that directory. It also facilitates specifying custom paths to be added to the shortcuts list.
It provides a icon and list view to choose files from. And it also accepts filter and filename inputs.
To create a FileBrowser which prints the currently selected file as
well as the current text in the filename field when 'Select' is pressed,
with a shortcut to the Documents directory added to the favorites bar:
.. code-block:: python
from kivy.app import App
from os.path import sep, expanduser, isdir, dirname
import sys
class TestApp(App):
def build(self):
if sys.platform == 'win':
user_path = dirname(expanduser('~')) + sep + 'Documents'
else:
user_path = expanduser('~') + sep + 'Documents'
browser = FileBrowser(select_string='Select',
favorites=[(user_path, 'Documents')])
browser.bind(
on_success=self._fbrowser_success,
on_canceled=self._fbrowser_canceled)
return browser
def _fbrowser_canceled(self, instance):
print 'cancelled, Close self.'
def _fbrowser_success(self, instance):
print instance.selection
TestApp().run()
Events
on_canceledFired when theCancelbuttonson_releaseevent is called.on_successFired when theSelectbuttonson_releaseevent is called.
Install
pip install kivy_garden.filebrowser
CI
Every push or pull request run the GitHub Action 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 and feel free to improve the flower.
License
This software is released under the terms of the MIT License. Please see the LICENSE.txt file.
How to release
- update
__version__inkivy-garden/filebrowser/__init__.pyto the latest version. - update
CHANGELOG.mdand commit the changes - call
git tag -a x.y.z -m "Tagging version x.y.z" - call
python setup.py bdist_wheel --universalandpython setup.py sdist, which generates the wheel and sdist in the dist/* directory - Make sure the dist directory contains the files to be uploaded to pypi and call
twine check dist/* - then call
twine upload dist/*to upload to pypi. - call
git push origin master --tagsto push the latest changes and the tags to github.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kivy_garden.filebrowser-1.1.2.tar.gz.
File metadata
- Download URL: kivy_garden.filebrowser-1.1.2.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70507c604d9692dcb06283c1a48a8fbbb0382f5420f49ba359d29f066747b246
|
|
| MD5 |
8acbf777f2549b4d6f12b640e6a34970
|
|
| BLAKE2b-256 |
9369293908da625a2811059a1f4b1df714fde5f8218455c61f027fd7890bc5af
|
File details
Details for the file kivy_garden.filebrowser-1.1.2-py2.py3-none-any.whl.
File metadata
- Download URL: kivy_garden.filebrowser-1.1.2-py2.py3-none-any.whl
- Upload date:
- Size: 9.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b20e186be7991037a3b84f2b36de62e310cf40f00a2de6d87cc593ff50084ceb
|
|
| MD5 |
bc2be82760b8ea5f989e06e188b3e847
|
|
| BLAKE2b-256 |
3a0674e8b851bf562552765994051fa9f0092e3adfeba6e67d2f6dd74ffa0f6e
|