docs: def file_selection(multiple=False, directory=False, save=False,
                     confirm_overwrite=False, filename=None,
                     title="", width=DEFAULT_WIDTH,
                     height=DEFAULT_HEIGHT, timeout=None):
      """
      Open a file selection window
  
      :param multiple: allow multiple file selection
      :type multiple: bool
      :param directory: only directory selection
      :type directory: bool
      :param save: save mode
      :type save: bool
      :param confirm_overwrite: confirm when a file is overwritten
      :type confirm_overwrite: bool
      :param filename: placeholder for the filename
      :type filename: str
      :param text: text inside the window
      :type text: str
      :param title: title of the window
      :type title: str
      :param width: window width
      :type width: int
      :param height: window height
      :type height: int
      :param timeout: close the window after n seconds
      :type timeout: int
      :return: path of files selected.
      :rtype: string or list if multiple enabled
      """
      dialog = ZFileSelection(multiple, directory, save,
                              confirm_overwrite, filename,
                              title, width, height, timeout)
      dialog.run()
      return dialog.response