// parameter isFileMandatory is used to determine if at least one file must be selected
 // before being able to proceed to the next page
 public SelectMultiFilePage(
     IWorkbench workbench, IStructuredSelection selection, boolean isFileMandatory) {
   super("SelectMultiFilePage");
   this.workbench = workbench;
   this.selection = selection;
   this.isFileMandatory = isFileMandatory;
   this.workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
   this.fileNames = null;
 }
 public void setVisible(boolean visible) {
   if (visible == true) {
     if (fFilters != null) {
       sourceFileViewer.resetFilters();
       for (Iterator i = fFilters.iterator(); i.hasNext(); )
         sourceFileViewer.addFilter((ViewerFilter) i.next());
     }
     sourceFileViewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
   }
   super.setVisible(visible);
 }