Interface ProjectController


@API(type=NOT_EXTENDABLE, src=PUBLIC) public interface ProjectController
API to access the Project view.
Since:
19.1
  • Method Details

    • addProjectChangeListener

      void addProjectChangeListener(ProjectChangeListener projectChangeListener)
      Add a listener that gets notified after another project is loaded.
      Parameters:
      projectChangeListener - The project listener to add.
      Since:
      21.1
    • removeProjectChangeListener

      void removeProjectChangeListener(ProjectChangeListener projectChangeListener)
      Remove a listener that gets notified when another project is loaded.
      Parameters:
      projectChangeListener - The project listener to remove.
      Since:
      21.1
    • getCurrentProjectURL

      URL getCurrentProjectURL()
      Get the URL of the current project.
      Returns:
      the project URL.
      Since:
      21.1
    • addPopUpMenuCustomizer

      void addPopUpMenuCustomizer(ProjectPopupMenuCustomizer popUpCustomizer)
      Add the given pop-up menu customizer which can be used to customize the Project pop-up menu.
      Parameters:
      popUpCustomizer - the pop-up menu customizer to add.
    • removePopUpMenuCustomizer

      void removePopUpMenuCustomizer(ProjectPopupMenuCustomizer popUpCustomizer)
      Remove the given pop-up menu customizer.
      Parameters:
      popUpCustomizer - the pop-up menu customizer to remove.
    • getSelectedFiles

      File[] getSelectedFiles()
      Gets the selected files or folders. If both parent and child files/folders are selected, they are all returned.
      Returns:
      The array of Files value, can be empty if no selection or invalid selection.
    • refreshFolders

      void refreshFolders(File[] folders)
      Refresh the given folders referenced in the project.
      Parameters:
      folders - An array of folders to refresh.
    • addLinksToFoldersInProjectRoot

      void addLinksToFoldersInProjectRoot(File[] folders)
      Add links to existing folders in the project root references list.
      Parameters:
      folders - The folders to refer. They should already be created on disk before calling this API which just links to it.
    • addRendererCustomizer

      void addRendererCustomizer(ProjectRendererCustomizer rendererCustomizer)
      Add the given renderer customizer which can be used to customize the Project rendering for various displayed resources.
      Parameters:
      rendererCustomizer - the renderer customizer to add.
      Since:
      20
    • removeRendererCustomizer

      void removeRendererCustomizer(ProjectRendererCustomizer rendererCustomizer)
      Remove the given renderer customizer.
      Parameters:
      rendererCustomizer - the renderer customizer to remove.
      Since:
      20
    • loadProject

      void loadProject(File project)
      Load the given project file.
      Parameters:
      project - The project file.
      Since:
      22
    • getProjectIndexer

      ro.sync.exml.workspace.api.standalone.project.ProjectIndexer getProjectIndexer()
      Gives access to text search operations over resources indexed for the current project.
      Returns:
      The indexer, never null.
      Since:
      24.1
    • getMainFileResourcesIterator

      Iterator<URL> getMainFileResourcesIterator()
      Get an iterator over the entire list of main file resources referenced in the Project "Main Files" folder. If the "Main files" support is disabled, an empty iterator will be returned, even if it contains referenced resources.
      Returns:
      An iterator over the list with configured main files. Never null.
      Since:
      25