Schrodinger version of the QFileDialog class of the QtGui module.
  Defines a FileDialog class that mimics the Maestro's file dialogs.
  Copyright Schrodinger, LLC. All rights reserved.
    | list | 
        
          | _add_extension_if_necessary(files,
        filter) Attach the first extension in filter to each filename in files that 
      does not already have an extension
 |  |  | 
    |  | 
        
          | _setup_sidebar(qfd,
        sidebar_links=None) Used to set up the sidebar directories in file browsers.
 |  |  | 
    | list or None | 
        
          | base_file_dialog(parent= '',
        caption='Open File',
        dir=None,
        filter='All Files (*)',
        selectedFilter=None,
        options=None,
        default_suffix=None,
        accept_label='Open',
        accept_mode=0,
        file_mode=1,
        confirm=True,
        custom_sidebar=True,
        sidebar_links=None,
        id=None)Convenience function that creates a highly customizable file dialog
 |  |  | 
    | str |  | 
    |  | 
        
          | fix_splitter(dialog) Alters the splitter between the file pane and the directory pane so 
      that both sides are visible.
 |  |  | 
    | str or None | 
        
          | get_existing_directory(parent= '',
        caption='Choose Directory',
        dir=None,
        accept_label='Choose',
        file_mode=4,
        **kwargs)Convenience function that returns a directory name as selected by the
      user
 |  |  | 
    | str or None |  | 
    | str or None | 
        
          | get_existing_project_name(*args,
        **kwargs) Convenience function to open a Open Project dialog and return the 
      path the user selects.
 |  |  | 
    | str or None |  | 
    | str or None | 
        
          | get_open_file_name(parent= '',
        caption='Open File',
        dir=None,
        filter='All Files (*)',
        **kwargs)Convenience function that returns a single filename as selected by 
      the user
 |  |  | 
    | list of str or None | 
        
          | get_open_file_names(parent= '',
        caption='Open Files',
        dir=None,
        filter='All Files (*)',
        accept_label='Open',
        file_mode=3,
        **kwargs)Convenience function that returns a list of filenames as selected by 
      the user
 |  |  | 
    | str or None | 
        
          | get_open_wm_file_name(parent= '',
        dir=None,
        **kwargs)Convenience function that returns a single WaterMap file as selected 
      by the user.
 |  |  | 
    | str or None | 
        
          | get_save_file_name(parent= '',
        caption='Save File',
        dir=None,
        filter='All Files (*)',
        accept_label='Save',
        accept_mode=1,
        file_mode=0,
        **kwargs)Convenience function that returns a filename as selected by the user
 |  |  | 
    | dict |  | 
    | bool | 
        
          | has_phasedb_ending(path) Detect whether path ends in one of the recognized valid endings that 
      indicate a Phase database.
 |  |  | 
    | bool | 
        
          | has_project_ending(path) Detect whether path ends in one of the recognized valid endings that 
      indicate a project
 |  |  | 
    |  | MAESTRO_FILTER = 'Maestro files (*.bld *.cms *.cms.gz *.cmsgz ... | 
    |  | MAESTRO_SD_FILTER = 'All supported files (*.bld *.cms *.cms.gz... | 
    |  | PDB_FILTER = 'PDB files (*.pdb *.ent *.pdb.gz *.pdbgz *.ent.gz... | 
    |  | PHASEDB_FILTER = 'Phase Databases (*_phasedb *.phdb)' | 
    |  | PHASEDB_SUFFIXES = ['_phasedb', '.phdb'] | 
    |  | PROJECTS_FILTER = 'Projects (*.prj *.prjzip *.prj.zip)' | 
    |  | PROJECT_SUFFIXES = ['.prj', '.prjzip', '.prj.zip'] | 
    |  | SD_FILTER = 'SD files (*.sd *.sdf *.mol *.sdf.gz *.sdfgz *.sd.... | 
    |  | __package__ = 'schrodinger.ui.qt' | 
    |  | _last_selected_directory = {} | 
    |  | _last_selected_filter = Nonehash(x)
 | 
    |  | x = '.phdb' |