Skip to main content

Python file chooser widget for use in Jupyter/IPython in conjunction with ipywidgets

Project description

ipyfilechooser

A simple Python file chooser widget for use in Jupyter/IPython in conjunction with ipywidgets. The selected path and file are available via .selected_path and .selected_filename respectvely or as a single combined filepath via .selected. The dialog can be reset to its default path and filename by using .reset().

When a typed filename matches an existing file entry in the current folder the entry will be highlighted. If a typed filename matches a folder entry in the current view the selection button is disabled ensure the user is aware of the match. To select a folder simply leave the filename field empty.

To emphasize the risk of overwriting existing files, the selected filepath is displayed in green if the file does not exist and orange if it does.

Downloads

Usage

from ipyfilechooser import FileChooser

# Create and display a FileChooser widget
fc = FileChooser('/Users/crahan/FC demo')
display(fc)

# Print the selected path, filename, or both
print(fc.selected_path)
print(fc.selected_filename)
print(fc.selected)

# Change defaults and reset the dialog
fc.default_path = '/Users/crahan/'
fc.default_filename = 'output.txt'
fc.reset()

# Shorthand reset
fc.reset(path='/Users/crahan/', filename='output.txt')

# Change hidden files
fc.show_hidden = True

# Show or hide folder icons
fc.use_dir_icons = True

# Change the title (use '' to hide)
fc.title = '<b>FileChooser title</b>'

# Sample callback function
def change_title(chooser):
    chooser.title = '<b>Callback function executed</b>'

# Register callback function
fc.register_callback(change_title)

Functions and variables

fc.reset()
fc.refresh()
fc.register_callback(function_name)
fc.show_hidden
fc.use_dir_icons
fc.rows
fc.title
fc.default
fc.default_path
fc.default_filename
fc.selected
fc.selected_path
fc.selected_filename

Screenshots

Closed vs open dialog

Screenshot 1

Screenshot 2

Existing vs new file selection

Screenshot 3

Screenshot 4

Quick navigation dropdown

Screenshot 5

Use folder icons

Screenshot 6

Release notes

0.3.4

  • Option added to display folder icons (@ptooley)

0.3.3

  • Option added to add self as an argument to the callback function (@ptooley)

0.3.2

  • Return None if file is not selected (@danjjl)

0.3.1

  • Option to register a callback function (register_callback(function_name))

0.3.0

  • Ability to select a folder
  • Support for Windows drive letters
  • Option to use the defaults as the selected value

0.2.0

  • First public release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipyfilechooser-0.3.4.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

ipyfilechooser-0.3.4-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file ipyfilechooser-0.3.4.tar.gz.

File metadata

  • Download URL: ipyfilechooser-0.3.4.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.2

File hashes

Hashes for ipyfilechooser-0.3.4.tar.gz
Algorithm Hash digest
SHA256 705a8a0d36b87414a72ab81a0327d3201a85e8f68ba1c70aa4f0250e1192a0db
MD5 77d9c697359be82b3f981b2d99928144
BLAKE2b-256 b4e5dd820ce95eecbaa24f32aa69b323a52bdccfbb21a2c4c5d74bd80792f7e8

See more details on using hashes here.

File details

Details for the file ipyfilechooser-0.3.4-py3-none-any.whl.

File metadata

  • Download URL: ipyfilechooser-0.3.4-py3-none-any.whl
  • Upload date:
  • Size: 7.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.2

File hashes

Hashes for ipyfilechooser-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 69cc9388ae1271d171ed8d554122dda24f2d7f9e652f0f072f9da891ec1bb909
MD5 71d2f50ac18a60576f780352b8aa3134
BLAKE2b-256 025199115ae0ff4f4a0e61b5f5715247214486d6a5a5579a3c7652d42ba542ec

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page