Example usage for org.eclipse.jface.viewers ViewerComparator ViewerComparator

List of usage examples for org.eclipse.jface.viewers ViewerComparator ViewerComparator

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ViewerComparator ViewerComparator.

Prototype

public ViewerComparator() 

Source Link

Document

Creates a new ViewerComparator , which uses the default comparator to sort strings.

Usage

From source file:org.eclipse.libra.facet.ui.wizards.ConvertProjectsToBundlesWizardPage.java

License:Open Source License

private void createProjectsViewer(Composite parent) {
    DataBindingContext dbc = new DataBindingContext();
    WizardPageSupport.create(this, dbc);

    Label projectsLabel = new Label(parent, SWT.NONE);
    projectsLabel.setText(Messages.ConvertProjectsToBundlesWizardPage_AvailableProjects);
    GridDataFactory.swtDefaults().span(2, 1).applyTo(projectsLabel);

    final CheckboxTableViewer projectsViewer = CheckboxTableViewer.newCheckList(parent,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(projectsViewer.getControl());
    projectsViewer.setLabelProvider(new WorkbenchLabelProvider());
    projectsViewer.setContentProvider(new ArrayContentProvider());
    projectsViewer.setInput(fUnconverted);
    projectsViewer.setComparator(new ViewerComparator());
    dbc.bindSet(ViewersObservables.observeCheckedElements(projectsViewer, IProject.class), fSelected);
    dbc.addValidationStatusProvider(new SelectionValidator());

    Composite buttonGroup = new Composite(parent, SWT.NONE);
    GridLayoutFactory.fillDefaults().generateLayout(buttonGroup);

    Button selectAllButton = new Button(buttonGroup, SWT.PUSH);
    selectAllButton.setText(Messages.ConvertProjectsToBundlesWizardPage_SelectAll);
    selectAllButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            fSelected.addAll(fUnconverted);
        }//from   w  w  w .j a v a2 s.  c  o m
    });
    GridDataFactory.fillDefaults().applyTo(selectAllButton);

    Button deselectAllButton = new Button(buttonGroup, SWT.PUSH);
    deselectAllButton.setText(Messages.ConvertProjectsToBundlesWizardPage_DeselectAll);
    deselectAllButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            for (Object o : fUnconverted) {
                fSelected.remove(o);
            }

        }
    });
    GridDataFactory.fillDefaults().applyTo(deselectAllButton);

    Button addReferencesButton = new Button(buttonGroup, SWT.PUSH);
    addReferencesButton.setText(Messages.ConvertProjectsToBundlesWizardPage_AddReferences);
    addReferencesButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            selectReferences();
        }
    });
    GridDataFactory.fillDefaults().indent(0, 8).applyTo(addReferencesButton);

    Label selectedCountLabel = new Label(buttonGroup, SWT.WRAP);
    GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BOTTOM).grab(false, true).applyTo(selectedCountLabel);
    dbc.bindValue(SWTObservables.observeText(selectedCountLabel), new ComputedValue(String.class) {
        @Override
        protected Object calculate() {
            return NLS.bind(Messages.ConvertProjectsToBundlesWizardPage_SelectionCounter, fSelected.size(),
                    fUnconverted.size());
        }
    });
}

From source file:org.eclipse.libra.warproducts.ui.editor.LibrarySection.java

License:Open Source License

private void addComparator() {
    libraryTable.setComparator(new ViewerComparator() {

        public int compare(final Viewer viewer, final Object e1, final Object e2) {
            IPath p1 = (IPath) e1;/*w  ww  .j av  a  2  s. co  m*/
            IPath p2 = (IPath) e2;
            return super.compare(viewer, p1.toOSString(), p2.toOSString());
        }

    });
}

From source file:org.eclipse.libra.warproducts.ui.validation.PluginStatusContentVisualizer.java

License:Open Source License

public void createControls(final Composite parent) {
    treeViewer = new TreeViewer(parent);
    PluginStatusDialogContentProvider contentProvider = new PluginStatusDialogContentProvider(input);
    treeViewer.setContentProvider(contentProvider);
    treeViewer.setLabelProvider(new PluginStatusDialogLableProvider());
    treeViewer.setComparator(new ViewerComparator());
    treeViewer.setInput(input);/* w  w  w  .  j  ava 2 s . c  o m*/
    treeViewer.refresh();
}

From source file:org.eclipse.linuxtools.changelog.core.actions.ChangeLogContainerSelectionGroup.java

License:Open Source License

/**
 * Returns a new drill down viewer for this dialog.
 * /*from w  w w. j  av a 2  s .co  m*/
 * @param heightHint
 *            height hint for the drill down composite
 */
protected void createTreeViewer(int heightHint) {
    // Create drill down.
    DrillDownComposite drillDown = new DrillDownComposite(this, SWT.BORDER);
    GridData spec = new GridData(SWT.FILL, SWT.FILL, true, true);
    spec.widthHint = SIZING_SELECTION_PANE_WIDTH;
    spec.heightHint = heightHint;
    drillDown.setLayoutData(spec);

    // Create tree viewer inside drill down.
    treeViewer = new TreeViewer(drillDown, SWT.NONE);
    drillDown.setChildTree(treeViewer);
    ChangeLogContainerContentProvider cp = new ChangeLogContainerContentProvider();
    cp.showClosedProjects(showClosedProjects);
    treeViewer.setContentProvider(cp);
    treeViewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider());
    treeViewer.setComparator(new ViewerComparator());
    treeViewer.setUseHashlookup(true);
    treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            containerSelectionChanged((IContainer) selection.getFirstElement()); // allow null
        }
    });
    treeViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            if (selection instanceof IStructuredSelection) {
                Object item = ((IStructuredSelection) selection).getFirstElement();
                if (item == null) {
                    return;
                }
                if (treeViewer.getExpandedState(item)) {
                    treeViewer.collapseToLevel(item, 1);
                } else {
                    treeViewer.expandToLevel(item, 1);
                }
            }
        }
    });

    /*
     * This helps in displaying all folders under the document
     * root as well as the actual root itself.
     */
    ChangeLogRootContainer root = new ChangeLogRootContainer(this.initialSelection.getProject());
    // This has to be done after the viewer has been laid out
    treeViewer.setInput(root);
}

From source file:org.eclipse.linuxtools.internal.changelog.core.actions.ChangeLogContainerSelectionGroup.java

License:Open Source License

/**
 * Returns a new drill down viewer for this dialog.
 *
 * @param heightHint//from   w  w w  .j av  a 2  s. co m
 *            height hint for the drill down composite
 */
private void createTreeViewer(int heightHint) {
    // Create drill down.
    DrillDownComposite drillDown = new DrillDownComposite(this, SWT.BORDER);
    GridData spec = new GridData(SWT.FILL, SWT.FILL, true, true);
    spec.widthHint = SIZING_SELECTION_PANE_WIDTH;
    spec.heightHint = heightHint;
    drillDown.setLayoutData(spec);

    // Create tree viewer inside drill down.
    treeViewer = new TreeViewer(drillDown, SWT.NONE);
    drillDown.setChildTree(treeViewer);
    ChangeLogContainerContentProvider cp = new ChangeLogContainerContentProvider();
    cp.showClosedProjects(showClosedProjects);
    treeViewer.setContentProvider(cp);
    treeViewer.setLabelProvider(WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider());
    treeViewer.setComparator(new ViewerComparator());
    treeViewer.setUseHashlookup(true);
    treeViewer.addSelectionChangedListener(event -> {
        IStructuredSelection selection = (IStructuredSelection) event.getSelection();
        containerSelectionChanged((IContainer) selection.getFirstElement()); // allow null
    });
    treeViewer.addDoubleClickListener(event -> {
        ISelection selection = event.getSelection();
        if (selection instanceof IStructuredSelection) {
            Object item = ((IStructuredSelection) selection).getFirstElement();
            if (item == null) {
                return;
            }
            if (treeViewer.getExpandedState(item)) {
                treeViewer.collapseToLevel(item, 1);
            } else {
                treeViewer.expandToLevel(item, 1);
            }
        }
    });

    /*
     * This helps in displaying all folders under the document
     * root as well as the actual root itself.
     */
    ChangeLogRootContainer root = new ChangeLogRootContainer(this.initialSelection.getProject());
    // This has to be done after the viewer has been laid out
    treeViewer.setInput(root);
}

From source file:org.eclipse.linuxtools.internal.lttng2.kernel.ui.views.cpuusage.CpuUsageComposite.java

License:Open Source License

@Override
protected ITmfTreeColumnDataProvider getColumnDataProvider() {
    return new ITmfTreeColumnDataProvider() {

        @Override/*from   w  w w  .j  a va  2 s  .c om*/
        public List<TmfTreeColumnData> getColumnData() {
            /* All columns are sortable */
            List<TmfTreeColumnData> columns = new ArrayList<>();
            TmfTreeColumnData column = new TmfTreeColumnData(COLUMN_NAMES[0]);
            column.setComparator(new ViewerComparator() {
                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    CpuUsageEntry n1 = (CpuUsageEntry) e1;
                    CpuUsageEntry n2 = (CpuUsageEntry) e2;

                    return n1.getTid().compareTo(n2.getTid());

                }
            });
            columns.add(column);
            column = new TmfTreeColumnData(COLUMN_NAMES[1]);
            column.setComparator(new ViewerComparator() {
                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    CpuUsageEntry n1 = (CpuUsageEntry) e1;
                    CpuUsageEntry n2 = (CpuUsageEntry) e2;

                    return n1.getProcessName().compareTo(n2.getProcessName());

                }
            });
            columns.add(column);
            column = new TmfTreeColumnData(COLUMN_NAMES[2]);
            column.setComparator(new ViewerComparator() {
                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    CpuUsageEntry n1 = (CpuUsageEntry) e1;
                    CpuUsageEntry n2 = (CpuUsageEntry) e2;

                    return n1.getPercent().compareTo(n2.getPercent());

                }
            });
            column.setPercentageProvider(new ITmfColumnPercentageProvider() {

                @Override
                public double getPercentage(Object data) {
                    CpuUsageEntry parent = (CpuUsageEntry) data;
                    return parent.getPercent() / 100;
                }
            });
            columns.add(column);
            column = new TmfTreeColumnData(COLUMN_NAMES[3]);
            column.setComparator(new ViewerComparator() {
                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    CpuUsageEntry n1 = (CpuUsageEntry) e1;
                    CpuUsageEntry n2 = (CpuUsageEntry) e2;

                    return n1.getTime().compareTo(n2.getTime());

                }
            });
            columns.add(column);

            return columns;
        }

    };
}

From source file:org.eclipse.linuxtools.internal.valgrind.cachegrind.CachegrindViewPart.java

License:Open Source License

private SelectionListener getHeaderListener() {
    return new SelectionAdapter() {
        @Override//  www . j  a v a2s. c  o m
        public void widgetSelected(SelectionEvent e) {
            TreeColumn column = (TreeColumn) e.widget;
            Tree tree = viewer.getTree();
            if (column.equals(tree.getSortColumn())) {
                int direction = tree.getSortDirection() == SWT.UP ? SWT.DOWN : SWT.UP;
                tree.setSortDirection(direction);
            } else {
                tree.setSortDirection(SWT.UP);
            }
            tree.setSortColumn(column);
            viewer.setComparator(new ViewerComparator() {
                @Override
                public int compare(Viewer viewer, Object e1, Object e2) {
                    Tree tree = ((TreeViewer) viewer).getTree();
                    int direction = tree.getSortDirection();
                    ICachegrindElement o1 = (ICachegrindElement) e1;
                    ICachegrindElement o2 = (ICachegrindElement) e2;
                    long result = 0;

                    int sortIndex = Arrays.asList(tree.getColumns()).indexOf(tree.getSortColumn());
                    if (sortIndex == 0) { // use compareTo
                        result = o1.compareTo(o2);
                    } else {
                        long[] v1 = null;
                        long[] v2 = null;
                        if (o1 instanceof CachegrindFunction && o2 instanceof CachegrindFunction) {
                            v1 = ((CachegrindFunction) o1).getTotals();
                            v2 = ((CachegrindFunction) o2).getTotals();
                        } else if (o1 instanceof CachegrindLine && o2 instanceof CachegrindLine) {
                            v1 = ((CachegrindLine) o1).getValues();
                            v2 = ((CachegrindLine) o2).getValues();
                        } else if (o1 instanceof CachegrindOutput && o2 instanceof CachegrindOutput) {
                            v1 = ((CachegrindOutput) o1).getSummary();
                            v2 = ((CachegrindOutput) o2).getSummary();
                        }

                        if (v1 != null && v2 != null) {
                            result = v1[sortIndex - 1] - v2[sortIndex - 1];
                        }
                    }

                    // ascending or descending
                    result = direction == SWT.UP ? result : -result;

                    // overflow check
                    if (result > Integer.MAX_VALUE) {
                        result = Integer.MAX_VALUE;
                    } else if (result < Integer.MIN_VALUE) {
                        result = Integer.MIN_VALUE;
                    }

                    return (int) result;
                }
            });
        }
    };
}

From source file:org.eclipse.linuxtools.internal.valgrind.massif.MassifViewPart.java

License:Open Source License

private SelectionListener getHeaderListener() {
    return new SelectionAdapter() {
        @Override/*from  www. ja  va  2 s  .  c  o m*/
        public void widgetSelected(SelectionEvent e) {
            TableColumn column = (TableColumn) e.widget;
            Table table = viewer.getTable();
            if (column.equals(table.getSortColumn())) {
                int direction = table.getSortDirection() == SWT.UP ? SWT.DOWN : SWT.UP;
                table.setSortDirection(direction);
            } else {
                table.setSortDirection(SWT.UP);
            }
            table.setSortColumn(column);
            viewer.setComparator(new ViewerComparator() {
                @Override
                public int compare(Viewer viewer, Object o1, Object o2) {
                    Table table = ((TableViewer) viewer).getTable();
                    int direction = table.getSortDirection();
                    MassifSnapshot s1 = (MassifSnapshot) o1;
                    MassifSnapshot s2 = (MassifSnapshot) o2;
                    long result;
                    TableColumn column = table.getSortColumn();
                    if (column.getText().equals(TITLE_NUMBER)) {
                        result = s1.getNumber() - s2.getNumber();
                    } else if (column.getText().startsWith(TITLE_TIME)) {
                        result = s1.getTime() - s2.getTime();
                    } else if (column.getText().equals(TITLE_TOTAL)) {
                        result = s1.getTotal() - s2.getTotal();
                    } else if (column.getText().equals(TITLE_USEFUL)) {
                        result = s1.getHeapBytes() - s2.getHeapBytes();
                    } else if (column.getText().equals(TITLE_EXTRA)) {
                        result = s1.getHeapExtra() - s2.getHeapExtra();
                    } else {
                        result = s1.getStacks() - s2.getStacks();
                    }

                    // ascending / descending
                    result = direction == SWT.UP ? result : -result;

                    // overflow check
                    if (result > Integer.MAX_VALUE) {
                        result = Integer.MAX_VALUE;
                    } else if (result < Integer.MIN_VALUE) {
                        result = Integer.MIN_VALUE;
                    }
                    return (int) result;
                }
            });
        }
    };
}

From source file:org.eclipse.linuxtools.lttng.ui.tracecontrol.wizards.KernelTraceChannelConfigurationPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    container = new Composite(parent, SWT.NULL);
    container.setLayout(new GridLayout());
    setControl(container);/* w ww.  j  a va2s.c  o  m*/

    Composite headerComposite = new Composite(container, SWT.FILL);
    GridLayout headerLayout = new GridLayout(1, true);
    headerLayout.marginHeight = 0;
    headerLayout.marginWidth = 0;
    headerComposite.setLayout(headerLayout);
    headerComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    tableViewer = new TableViewer(headerComposite,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    tableViewer.setUseHashlookup(true);

    Table table = tableViewer.getTable();
    table.setHeaderVisible(true);

    fColumnNames = new ArrayList<String>();
    for (int i = 0; i < columnDataList.length; i++) {

        final ColumnData columnData = columnDataList[i];
        fColumnNames.add(columnData.header);
        final TableColumn tableColumn = new TableColumn(table, SWT.LEFT);
        tableColumn.setText(columnData.header);
        tableColumn.setWidth(columnData.width);
        tableColumn.setAlignment(columnData.alignment);
        tableColumn.setToolTipText(columnData.tooltip);
        tableColumn.setMoveable(false);
        if (columnData.comparator != null) {
            tableColumn.addSelectionListener(new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    if (tableViewer.getTable().getSortDirection() == SWT.UP
                            || (tableViewer.getTable().getSortColumn() != tableColumn)) {
                        tableViewer.setComparator(columnData.comparator);
                        tableViewer.getTable().setSortDirection(SWT.DOWN);
                    } else {
                        tableViewer.setComparator(new ViewerComparator() {
                            @Override
                            public int compare(Viewer viewer, Object e1, Object e2) {
                                return -1 * columnData.comparator.compare(viewer, e1, e2);
                            }
                        });
                        tableViewer.getTable().setSortDirection(SWT.UP);
                    }
                    tableViewer.getTable().setSortColumn(tableColumn);
                }
            });
        }
    }

    tableViewer.setColumnProperties(fColumnNames.toArray(new String[0]));

    // Create the cell editors
    CellEditor[] editors = new CellEditor[columnDataList.length];

    // Column 1 : Completed (Checkbox)
    TextCellEditor textEditor = new TextCellEditor(table);
    editors[0] = textEditor;

    // Column 2 : Description (Free text)
    editors[1] = new CheckboxCellEditor(table);

    // Column 3 : Owner (Combo Box) 
    editors[2] = new CheckboxCellEditor(table);

    // Column 4 : Percent complete (Text with digits only)
    textEditor = new TextCellEditor(table);
    ((Text) textEditor.getControl()).addVerifyListener(

            new VerifyListener() {

                @Override
                public void verifyText(VerifyEvent e) {
                    e.doit = e.text.matches("[0-9]*"); //$NON-NLS-1$
                }
            });
    editors[3] = textEditor;

    textEditor = new TextCellEditor(table);
    ((Text) textEditor.getControl()).addVerifyListener(

            new VerifyListener() {

                @Override
                public void verifyText(VerifyEvent e) {
                    e.doit = e.text.matches("[0-9]*"); //$NON-NLS-1$
                }
            });
    editors[4] = textEditor;

    textEditor = new TextCellEditor(table);
    ((Text) textEditor.getControl()).addVerifyListener(

            new VerifyListener() {

                @Override
                public void verifyText(VerifyEvent e) {
                    e.doit = e.text.matches("[0-9]*"); //$NON-NLS-1$
                }
            });
    editors[5] = textEditor;

    // Assign the cell editors to the viewer 
    tableViewer.setCellEditors(editors);
    tableViewer.setCellModifier(new TraceChannelCellModifier(this));

    tableViewer.setContentProvider(new TraceChannelTableContentProvider());
    tableViewer.setLabelProvider(new TraceChannelTableLabelProvider());

    table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    makeActions();
    addContextMenu();
}

From source file:org.eclipse.linuxtools.lttng.ui.views.statistics.StatisticsView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    parent.setLayout(new FillLayout());

    treeViewer = new TreeViewer(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    treeViewer.setContentProvider(new TreeContentProvider());
    treeViewer.getTree().setHeaderVisible(true);
    treeViewer.setUseHashlookup(true);//from w  ww  .j a  va 2s.  com

    for (final ColumnData columnData : columnDataList) {
        final TreeViewerColumn treeColumn = new TreeViewerColumn(treeViewer, columnData.alignment);
        treeColumn.getColumn().setText(columnData.header);
        treeColumn.getColumn().setWidth(columnData.width);
        treeColumn.getColumn().setToolTipText(columnData.tooltip);
        if (columnData.comparator != null) {
            treeColumn.getColumn().addSelectionListener(new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    if (treeViewer.getTree().getSortDirection() == SWT.UP
                            || treeViewer.getTree().getSortColumn() != treeColumn.getColumn()) {
                        treeViewer.setComparator(columnData.comparator);
                        treeViewer.getTree().setSortDirection(SWT.DOWN);
                    } else {
                        treeViewer.setComparator(new ViewerComparator() {
                            @Override
                            public int compare(Viewer viewer, Object e1, Object e2) {
                                return -1 * columnData.comparator.compare(viewer, e1, e2);
                            }
                        });
                        treeViewer.getTree().setSortDirection(SWT.UP);
                    }
                    treeViewer.getTree().setSortColumn(treeColumn.getColumn());
                }
            });
        }
        treeColumn.setLabelProvider(columnData.labelProvider);
    }

    // Handler that will draw the bar charts.
    treeViewer.getTree().addListener(SWT.EraseItem, new Listener() {
        // @Override
        @Override
        public void handleEvent(Event event) {
            if (columnDataList[event.index].percentageProvider != null) {
                StatisticsTreeNode node = (StatisticsTreeNode) event.item.getData();

                double percentage = columnDataList[event.index].percentageProvider.getPercentage(node);
                if (percentage == 0) {
                    return;
                }

                if ((event.detail & SWT.SELECTED) > 0) {
                    Color oldForeground = event.gc.getForeground();
                    event.gc.setForeground(event.item.getDisplay().getSystemColor(SWT.COLOR_LIST_SELECTION));
                    event.gc.fillRectangle(event.x, event.y, event.width, event.height);
                    event.gc.setForeground(oldForeground);
                    event.detail &= ~SWT.SELECTED;
                }

                int barWidth = (int) ((treeViewer.getTree().getColumn(1).getWidth() - 8) * percentage);
                int oldAlpha = event.gc.getAlpha();
                Color oldForeground = event.gc.getForeground();
                Color oldBackground = event.gc.getBackground();
                event.gc.setAlpha(64);
                event.gc.setForeground(event.item.getDisplay().getSystemColor(SWT.COLOR_BLUE));
                event.gc.setBackground(event.item.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
                event.gc.fillGradientRectangle(event.x, event.y, barWidth, event.height, true);
                event.gc.drawRectangle(event.x, event.y, barWidth, event.height);
                event.gc.setForeground(oldForeground);
                event.gc.setBackground(oldBackground);
                event.gc.setAlpha(oldAlpha);
                event.detail &= ~SWT.BACKGROUND;
            }
        }
    });

    treeViewer.setComparator(columnDataList[0].comparator);
    treeViewer.getTree().setSortColumn(treeViewer.getTree().getColumn(0));
    treeViewer.getTree().setSortDirection(SWT.DOWN);

    // Read current data if any available
    TmfExperiment<?> experiment = TmfExperiment.getCurrentExperiment();
    if (experiment != null) {

        @SuppressWarnings({ "rawtypes", "unchecked" })
        TmfExperimentSelectedSignal<?> signal = new TmfExperimentSelectedSignal(this, experiment);
        experimentSelected(signal);

    } else {
        TraceDebug.debug("No selected experiment information available"); //$NON-NLS-1$
    }
}