Package org.eclipse.ui.dialogs

Examples of org.eclipse.ui.dialogs.ElementTreeSelectionDialog


            }
        });
    }

    private void selectInWorkspace() {
        ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(),
                new WorkbenchLabelProvider(), new BaseWorkbenchContentProvider());
        dialog.setTitle("Select a workspace relative file:");
        dialog.setMessage("Select a workspace relative file:");
        // Filter closed projects
        dialog.addFilter(new ViewerFilter() {
            public boolean select(Viewer viewer, Object parentElement, Object element) {
                if (element instanceof IProject)
                    return ((IProject) element).isAccessible();

                return true;
            }
        });
        dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());
        // TODO try to preselect the current file
        dialog.open();
        Object[] results = dialog.getResult();
        if ((results != null) && (results.length > 0) && (results[0] instanceof IFile)) {
            IPath path = ((IFile) results[0]).getFullPath();
            if (project != null && path.segment(0).equals(project.getProject().getName())) {
                setWorkspaceLoc(path.removeFirstSegments(1).makeRelative().toString());
            } else {
View Full Code Here


    private IPackageFragment selectClientPackage(IPackageFragment initialSelection) {
      Shell shell = Display.getCurrent().getActiveShell();
      ILabelProvider labelProvider =
          new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT);
      ITreeContentProvider contentProvider = new StandardJavaElementContentProvider();
      ElementTreeSelectionDialog dialog =
          new ElementTreeSelectionDialog(shell, labelProvider, contentProvider);
      //
      dialog.setTitle("Source folder selection");
      dialog.setMessage("Choose a source folder:");
      dialog.setComparator(new ViewerComparator());
      // set validator to accept only package selection
      dialog.setValidator(new ISelectionStatusValidator() {
        public IStatus validate(Object[] selection) {
          if (selection.length == 1) {
            Object element = selection[0];
            if (isElementValid(element)) {
              return StatusUtils.OK_STATUS;
            }
          }
          return StatusUtils.ERROR_STATUS;
        }

        private boolean isElementValid(Object element) {
          if (element instanceof IPackageFragment) {
            IPackageFragment packageFragment = (IPackageFragment) element;
            try {
              return Utils.isModuleSourcePackage(packageFragment);
            } catch (Throwable e) {
              DesignerPlugin.log(e);
            }
          }
          return false;
        }
      });
      // set filter to show only GWT projects and client packages
      dialog.addFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
          try {
            if (element instanceof IJavaProject) {
              return Utils.isGWTProject((IJavaProject) element);
            }
            if (element instanceof IPackageFragmentRoot) {
              return ((IPackageFragmentRoot) element).getKind() == IPackageFragmentRoot.K_SOURCE;
            }
            if (element instanceof IPackageFragment) {
              IPackageFragment packageFragment = (IPackageFragment) element;
              return Utils.isModuleSourcePackage(packageFragment);
            }
          } catch (Throwable e) {
            DesignerPlugin.log(e);
          }
          return false;
        }
      });
      // configure input and initial selection
      dialog.setInput(JavaCore.create(ResourcesPlugin.getWorkspace().getRoot()));
      dialog.setInitialSelection(initialSelection);
      // open and return result
      if (dialog.open() == Window.OK) {
        return (IPackageFragment) dialog.getFirstResult();
      }
      return null;
    }
View Full Code Here

    }
    Shell shell = Display.getCurrent().getActiveShell();
    ILabelProvider labelProvider =
        new JavaElementLabelProvider(JavaElementLabelProvider.SHOW_DEFAULT);
    ITreeContentProvider contentProvider = new StandardJavaElementContentProvider();
    ElementTreeSelectionDialog dialog =
        new ElementTreeSelectionDialog(shell, labelProvider, contentProvider);
    dialog.setTitle("ClientFactory interface selection");
    dialog.setMessage("Choose a ClientFactory interface:");
    dialog.setAllowMultiple(false);
    dialog.setHelpAvailable(false);
    //
    dialog.setValidator(new ISelectionStatusValidator() {
      public IStatus validate(Object[] selection) {
        if (selection.length == 1) {
          if (selection[0] instanceof ICompilationUnit) {
            try {
              if (validateFactoryCompilationUnit((ICompilationUnit) selection[0]) == null) {
                return StatusUtils.OK_STATUS;
              }
            } catch (Exception e) {
              DesignerPlugin.log(e);
            }
          }
        }
        return StatusUtils.ERROR_STATUS;
      }
    });
    dialog.addFilter(new ViewerFilter() {
      @Override
      public boolean select(Viewer viewer, Object parentElement, Object element) {
        // check project
        if (element instanceof IJavaProject) {
          return element.equals(packageRoot.getJavaProject());
        }
        // check package fragment root
        if (element instanceof IPackageFragmentRoot) {
          return element.equals(packageRoot);
        }
        // check package fragment
        if (element instanceof IPackageFragment) {
          try {
            IPackageFragment packageFragment = (IPackageFragment) element;
            return packageFragment.getCompilationUnits().length > 0
                && Utils.isModuleSourcePackage(packageFragment);
          } catch (Exception e) {
            DesignerPlugin.log(e);
            return false;
          }
        }
        // check *.java
        if (element instanceof ICompilationUnit) {
          return true;
        }
        return false;
      }
    });
    dialog.setInput(packageRoot);
    {
      String factoryClassName = factoryNameField.getText();
      if (!StringUtils.isEmpty(factoryClassName)) {
        IPackageFragment packageFragment =
            packageRoot.getPackageFragment(CodeUtils.getPackage(factoryClassName));
        if (packageFragment.exists()) {
          ICompilationUnit compilationUnit =
              packageFragment.getCompilationUnit(CodeUtils.getShortClass(factoryClassName)
                  + ".java");
          if (compilationUnit.exists()) {
            dialog.setInitialSelection(compilationUnit);
          }
        }
      }
    }
    if (dialog.open() == Window.OK) {
      Object element = dialog.getFirstResult();
      if (element instanceof ICompilationUnit) {
        ICompilationUnit unit = (ICompilationUnit) element;
        factoryNameField.setText(unit.findPrimaryType().getFullyQualifiedName());
      }
    }
View Full Code Here

  @SuppressWarnings("rawtypes")
  public static ElementTreeSelectionDialog createSingle(Shell parent,
      String title, String message, Class[] filter,
      Object input, List selectedElements) {
   
    ElementTreeSelectionDialog diag = new ElementTreeSelectionDialog(parent,
        new WorkbenchLabelProvider(), new BaseWorkbenchContentProvider());
   
    configure(diag, title, message);
   
    if (filter.length > 0) {
      diag.addFilter(new TypedViewerFilter(filter));
    }
   
    diag.setInput(input);
   
    if (selectedElements != null) {
      diag.setInitialElementSelections(selectedElements);
    }
    return diag;
  }
View Full Code Here

       * Opens the corpus folder chooser dialog and shows the chosen dialog in the corpus folder
       * text field.
       */
      public void widgetSelected(SelectionEvent e) {

        final ElementTreeSelectionDialog folderSelectionDialog = new ElementTreeSelectionDialog(
                getShell(), new DecoratingLabelProvider(new WorkbenchLabelProvider(), PlatformUI
                        .getWorkbench().getDecoratorManager().getLabelDecorator()),
                new BaseWorkbenchContentProvider());

        folderSelectionDialog.addFilter(new ContainerElementFilter());

        if (containerElement != null) {
          folderSelectionDialog.setInitialSelection(containerElement);
        }

        folderSelectionDialog.setInput(org.apache.uima.caseditor.CasEditorPlugin.getNlpModel());

        folderSelectionDialog.setTitle("Choose folder");
        folderSelectionDialog.setMessage("Please choose a folder.");

        folderSelectionDialog.setValidator(new ISelectionStatusValidator() {
          public IStatus validate(Object[] selection) {

            if (selection.length == 1) {
             
              Object selectedElement = selection[0];
             
              if (selectedElement instanceof IAdaptable) {
                Object resourceElement = ((IAdaptable) selectedElement).getAdapter(IResource.class);
                if (resourceElement != null)
                  selectedElement = resourceElement;
              }
             
              if (selectedElement instanceof IContainer)
                return new Status(IStatus.OK, CasEditorPlugin.ID, 0, "", null);
            }

            return new Status(IStatus.ERROR, CasEditorPlugin.ID, 0, "Please select a folder!", null);
          }
        });

        folderSelectionDialog.open();

        Object[] results = folderSelectionDialog.getResult();

        if (results != null && results.length > 0) {
          // validator makes sure that an IContainer or an IAdaptable
          // element which can provide an IContainer is selected
         
View Full Code Here

           
            ILabelProvider lp= new ZipDialogLabelProvider(provider);
            ZipDialogContentProvider cp= new ZipDialogContentProvider(provider);
            ViewerSorter sorter= new ViewerSorter();
                       
            ElementTreeSelectionDialog dialog= new ElementTreeSelectionDialog(Display.getDefault().getActiveShell(), lp, cp);
            dialog.setAllowMultiple(false);
            dialog.setValidator(new ZipDialogValidator());
            dialog.setTitle(title);
            dialog.setMessage(message);
            dialog.setSorter(sorter);
           
            dialog.setInitialSelection(cp.findElement(new Path(pathInArchive)));
           
            dialog.setInput(path);
            if (dialog.open() == Window.OK) {
                String name= provider.getFullPath(dialog.getFirstResult());
                return new Path(name).removeTrailingSeparator().toString();
            }
        } catch (IOException e) {
            WojPlugin.log("Error while reading archive :"+path,e); //$NON-NLS-1$
        } finally {
View Full Code Here

    };
    org.eclipse.jface.viewers.ILabelProvider lp = new WorkbenchLabelProvider();
    org.eclipse.jface.viewers.ITreeContentProvider cp = new WorkbenchContentProvider();
   
    IProject currProject = getJavaProject().getProject();
    ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(), lp, cp);
    dialog.setValidator(validator);
    dialog.setTitle(title);
    dialog.setMessage(message);
    dialog.addFilter(filter);
    dialog.setInput(currProject);
    dialog.setComparator(new ResourceComparator(1));
    IResource res = currProject.findMember(initialPath);
    if(res != null)
      dialog.setInitialSelection(res);
    if(dialog.open() == 0)
      return (IFolder)dialog.getFirstResult();
    return null;
  }
View Full Code Here

   * returns the absolute path of selected JavaScript file.
   *
   * @return the absolute path of selected JavaScript file.
   */
  private static String browseJavaScriptFile() {
    ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(
        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
        new WorkbenchLabelProvider(), new WorkbenchContentProvider());
    dialog.setInput(ResourcesPlugin.getWorkspace());
    dialog.addFilter(new ViewerFilter(){
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element){
        if(element instanceof IProject || element instanceof IFolder){
          return true;
        }
        if(element instanceof IFile){
          if(((IFile)element).getName().endsWith(".js")){
            return true;
          }
        }
        return false;
      }
    });
    dialog.setAllowMultiple(false);
    dialog.setTitle(HTMLPlugin.getResourceString("Launcher.JavaScript.Dialog.SelectFile"));
   
    if (dialog.open() == Dialog.OK) {
      IFile file = (IFile) dialog.getFirstResult();
      return file.getLocation().toString();
    }
   
    return null;
  }
View Full Code Here

    _add.setLayoutData(createButtonGridData());
    _add.addSelectionListener(new SelectionAdapter(){
      @Override
      public void widgetSelected(SelectionEvent evt){
        IWorkspaceRoot wsroot = ResourcesPlugin.getWorkspace().getRoot();
        ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(
            parent.getShell(),
            new WorkbenchLabelProvider(),
            new WorkbenchContentProvider());
       
        dialog.setTitle(HTMLPlugin.getResourceString("JavaScriptPropertyPage.ChooseJavaScript"));
        dialog.setMessage(HTMLPlugin.getResourceString("JavaScriptPropertyPage.ChooseJavaScript.Description"));
        dialog.setInput(wsroot);
        dialog.setValidator(new ISelectionStatusValidator(){
          private IStatus okStatus = new Status(Status.OK, HTMLPlugin.getDefault().getPluginId(), Status.OK, "", null);
          private IStatus ngStatus = new Status(Status.ERROR, HTMLPlugin.getDefault().getPluginId(), Status.ERROR, "", null);
         
          public IStatus validate(Object[] selection) {
            for(int i=0;i<selection.length;i++){
              if(!(selection[i] instanceof IFile)){
                return ngStatus;
              }
              if(!((IFile)selection[i]).getName().endsWith(".js")){
                return ngStatus;
              }
              if(_tableModel.contains(selection[i])){
                return ngStatus;
              }
            }
            if(selection.length==0){
              return ngStatus;
            }
            return okStatus;
          }
        });
        if (dialog.open() == Dialog.OK) {
          Object[] results = dialog.getResult();
          for(int i=0;i<results.length;i++){
            _tableModel.add(results[i]);
          }
          _tableViewer.refresh();
          modelChanged();
        }
      }
    });
   
    _addExternal = new Button(buttons, SWT.PUSH);
    _addExternal.setText(HTMLPlugin.getResourceString("Button.AddExternal"));
    _addExternal.setLayoutData(createButtonGridData());
    _addExternal.addSelectionListener(new SelectionAdapter(){
      @Override
      public void widgetSelected(SelectionEvent evt){
        FileDialog dialog = new FileDialog(parent.getShell(), SWT.OPEN|SWT.MULTI);
        dialog.setFilterExtensions(new String[]{"*.js"});
        String result = dialog.open();
        if(result!=null){
          String dir = dialog.getFilterPath();
          String[] fileNames = dialog.getFileNames();
          for(int i=0;i<fileNames.length;i++){
            _tableModel.add(new File(dir, fileNames[i]));
          }
          _tableViewer.refresh();
          modelChanged();
View Full Code Here

    fWorkspaceBrowse = createPushButton(standardGroup, LaunchConfigurationsMessages.CommonTab_12,
            null);
    fWorkspaceBrowse.addSelectionListener(new SelectionAdapter() {
      @Override
      public void widgetSelected(SelectionEvent e) {
        ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(),
                new WorkbenchLabelProvider(), new WorkbenchContentProvider());
        dialog.setTitle(LaunchConfigurationsMessages.CommonTab_13);
        dialog.setMessage(LaunchConfigurationsMessages.CommonTab_14);
        dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());
        dialog.setSorter(new ResourceSorter(ResourceSorter.NAME));
        if (dialog.open() == IDialogConstants.OK_ID) {
          IResource resource = (IResource) dialog.getFirstResult();
          String arg = resource.getFullPath().toString();
          String fileLoc = VariablesPlugin.getDefault().getStringVariableManager()
                  .generateVariableExpression("workspace_loc", arg); //$NON-NLS-1$
          fFileText.setText(fileLoc);
        }
      }
    });
    fFileBrowse = createPushButton(standardGroup, LaunchConfigurationsMessages.CommonTab_7, null);
    fFileBrowse.addSelectionListener(new SelectionAdapter() {
      @Override
      public void widgetSelected(SelectionEvent e) {
        String filePath = fFileText.getText();
        FileDialog dialog = new FileDialog(getShell(), SWT.SAVE);
        filePath = dialog.open();
        if (filePath != null) {
          fFileText.setText(filePath);
        }
      }
    });
    fVariables = createPushButton(standardGroup, LaunchConfigurationsMessages.CommonTab_9, null);
    fVariables.addSelectionListener(new SelectionListener() {
      public void widgetSelected(SelectionEvent e) {
        StringVariableSelectionDialog dialog = new StringVariableSelectionDialog(getShell());
        dialog.open();
        String variable = dialog.getVariableExpression();
        if (variable != null) {
          fFileText.insert(variable);
        }
      }
View Full Code Here

TOP

Related Classes of org.eclipse.ui.dialogs.ElementTreeSelectionDialog

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.