fr/fr_env/lib/python3.8/site-packages/skimage/viewer/utils/dialogs.py

36 lines
937 B
Python

import os
from ..qt import QtWidgets
__all__ = ['open_file_dialog', 'save_file_dialog']
def _format_filename(filename):
if isinstance(filename, tuple):
# Handle discrepancy between PyQt4 and PySide APIs.
filename = filename[0]
if len(filename) == 0:
return None
return str(filename)
def open_file_dialog():
"""Return user-selected file path."""
filename = QtWidgets.QFileDialog.getOpenFileName()
filename = _format_filename(filename)
return filename
def save_file_dialog(default_format='png'):
"""Return user-selected file path."""
filename = QtWidgets.QFileDialog.getSaveFileName()
filename = _format_filename(filename)
if filename is None:
return None
# TODO: io plugins should assign default image formats
basename, ext = os.path.splitext(filename)
if not ext:
filename = '%s.%s' % (filename, default_format)
return filename