Example usage for org.eclipse.jface.viewers StructuredSelection getFirstElement

List of usage examples for org.eclipse.jface.viewers StructuredSelection getFirstElement

Introduction

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

Prototype

@Override
    public Object getFirstElement() 

Source Link

Usage

From source file:com.hangum.tadpole.rdb.core.editors.sessionlist.SessionListEditor.java

License:Open Source License

/**
 * kill process/*w  w  w .  ja v  a2 s  . com*/
 */
private void killProcess() {
    StructuredSelection ss = (StructuredSelection) tableViewerSessionList.getSelection();
    SessionListDAO sl = (SessionListDAO) ss.getFirstElement();

    if (!MessageDialog.openConfirm(null, "Confirm", "Do you want kill process?"))
        return;

    try {
        SqlMapClient client = TadpoleSQLManager.getInstance(userDB);
        if (DBDefine.getDBDefine(userDB) == DBDefine.POSTGRE_DEFAULT) {
            client.queryForObject("killProcess", Integer.parseInt(sl.getId()));
        } else {
            client.queryForObject("killProcess", sl.getId());
        }

        initSessionListData();
    } catch (Exception e) {
        logger.error("killprocess exception", e);

        Status errStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e); //$NON-NLS-1$
        ExceptionDetailsErrorDialog.openError(getSite().getShell(), "Error", Messages.MainEditor_19, errStatus); //$NON-NLS-1$         
    }
}

From source file:com.hangum.tadpole.rdb.core.viewers.sql.template.SQLTemplateView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    parent.setLayout(new GridLayout(1, false));

    Composite compositeHead = new Composite(parent, SWT.NONE);
    compositeHead.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    compositeHead.setLayout(new GridLayout(1, false));

    ToolBar toolBar = new ToolBar(compositeHead, SWT.FLAT | SWT.RIGHT);

    ToolItem tltmRefresh = new ToolItem(toolBar, SWT.NONE);
    tltmRefresh.addSelectionListener(new SelectionAdapter() {
        @Override//  www .  j  a v a 2  s . co  m
        public void widgetSelected(SelectionEvent e) {
            initData();
        }
    });
    tltmRefresh.setImage(GlobalImageUtils.getRefresh());
    tltmRefresh.setToolTipText(Messages.get().Refresh);

    ToolItem tltmAdd = new ToolItem(toolBar, SWT.NONE);
    tltmAdd.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            addTemplate(SQL_TEMPLATE_TYPE.PRI);
        }
    });
    tltmAdd.setImage(GlobalImageUtils.getAdd());
    tltmAdd.setToolTipText(Messages.get().Add);

    tltmModify = new ToolItem(toolBar, SWT.NONE);
    tltmModify.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            StructuredSelection ss = (StructuredSelection) tvSQLTemplate.getSelection();
            if (ss.getFirstElement() instanceof SQLTemplateDAO) {
                SQLTemplateDAO dao = (SQLTemplateDAO) ss.getFirstElement();
                SQLTemplateDialog dialog = new SQLTemplateDialog(getSite().getShell(), dao);
                if (Dialog.OK == dialog.open()) {
                    tvSQLTemplate.refresh(dialog.getOldSqlTemplateDAO());
                    textSQL.setText("");
                }
            }
        }
    });
    tltmModify.setImage(GlobalImageUtils.getModify());
    tltmModify.setToolTipText(Messages.get().Modified);
    tltmModify.setEnabled(false);

    tltmDelete = new ToolItem(toolBar, SWT.NONE);
    tltmDelete.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (!MessageDialog.openConfirm(getSite().getShell(), Messages.get().Confirm,
                    Messages.get().SQLTemplateView_del_equestion))
                return;

            StructuredSelection ss = (StructuredSelection) tvSQLTemplate.getSelection();
            if (ss.getFirstElement() instanceof SQLTemplateDAO) {
                SQLTemplateDAO dao = (SQLTemplateDAO) ss.getFirstElement();
                try {
                    TadpoleSystem_SQLTemplate.deleteSQLTemplate(dao);
                    grpPrivateDao.getChildList().remove(dao);
                    tvSQLTemplate.remove(dao);

                    textSQL.setText("");
                } catch (Exception e1) {
                    logger.error("Delete SQL template", e1);
                }
            }
        }
    });
    tltmDelete.setImage(GlobalImageUtils.getDelete());
    tltmDelete.setToolTipText(Messages.get().Delete);
    tltmDelete.setEnabled(false);

    // admin menu
    if (SessionManager.isSystemAdmin()) {
        new ToolItem(toolBar, SWT.SEPARATOR);
        ToolItem tltmAdminAdd = new ToolItem(toolBar, SWT.NONE);
        tltmAdminAdd.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                addTemplate(SQL_TEMPLATE_TYPE.PUB);
            }
        });
        tltmAdminAdd.setText(Messages.get().SQLTemplateView_Addpublictemplate);
        tltmAdminAdd.setToolTipText(Messages.get().SQLTemplateView_Addpublictemplate);
    }

    SashForm sashForm = new SashForm(parent, SWT.VERTICAL);
    sashForm.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    Composite compositeBody = new Composite(sashForm, SWT.NONE);
    compositeBody.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    GridLayout gl_compositeBody = new GridLayout(1, false);
    gl_compositeBody.verticalSpacing = 0;
    gl_compositeBody.horizontalSpacing = 0;
    gl_compositeBody.marginHeight = 0;
    gl_compositeBody.marginWidth = 0;
    compositeBody.setLayout(gl_compositeBody);

    textSearch = new Text(compositeBody, SWT.SEARCH | SWT.ICON_SEARCH | SWT.ICON_CANCEL);
    textSearch.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent e) {
            filterText();
        }
    });
    textSearch.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));

    tvSQLTemplate = new TreeViewer(compositeBody, SWT.BORDER | SWT.FULL_SELECTION);
    tvSQLTemplate.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            StructuredSelection ss = (StructuredSelection) event.getSelection();
            if (ss.getFirstElement() instanceof SQLTemplateDAO) {
                SQLTemplateDAO dao = (SQLTemplateDAO) ss.getFirstElement();
                if (SQL_TEMPLATE_TYPE.PUB.name().equals(dao.getCategory())) {
                    if (SessionManager.isSystemAdmin()) {
                        enableBtn(true);
                    } else {
                        enableBtn(false);
                    }
                } else {
                    enableBtn(true);
                }

                textSQL.setText(dao.getContent());
            } else {
                enableBtn(false);
                textSQL.setText("");
            }
        }

        private void enableBtn(boolean bool) {
            tltmModify.setEnabled(bool);
            tltmDelete.setEnabled(bool);
        }
    });
    tvSQLTemplate.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            StructuredSelection ss = (StructuredSelection) event.getSelection();
            if (ss.getFirstElement() instanceof SQLTemplateDAO) {
                SQLTemplateDAO dao = (SQLTemplateDAO) ss.getFirstElement();
                FindEditorAndWriteQueryUtil.run(dao.getContent());
            }
        }
    });
    Tree tree = tvSQLTemplate.getTree();
    tree.setLinesVisible(true);
    tree.setHeaderVisible(true);
    tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    TreeViewerColumn treeViewerColumn = new TreeViewerColumn(tvSQLTemplate, SWT.NONE);
    TreeColumn trclmnUrl = treeViewerColumn.getColumn();
    trclmnUrl.setWidth(55);
    trclmnUrl.setText(Messages.get().GroupName);

    TreeViewerColumn tvcName = new TreeViewerColumn(tvSQLTemplate, SWT.NONE);
    TreeColumn trclmnDBName = tvcName.getColumn();
    trclmnDBName.setWidth(100);
    trclmnDBName.setText(Messages.get().Name);

    TreeViewerColumn treeViewerColumn_2 = new TreeViewerColumn(tvSQLTemplate, SWT.NONE);
    TreeColumn trclmnDescription = treeViewerColumn_2.getColumn();
    trclmnDescription.setWidth(100);
    trclmnDescription.setText(Messages.get().Description);

    TreeViewerColumn treeViewerColumn_1 = new TreeViewerColumn(tvSQLTemplate, SWT.NONE);
    TreeColumn trclmnName = treeViewerColumn_1.getColumn();
    trclmnName.setWidth(300);
    trclmnName.setText(Messages.get().SQL);

    Composite compositeSQL = new Composite(sashForm, SWT.NONE);
    GridLayout gl_compositeSQL = new GridLayout(1, false);
    gl_compositeSQL.verticalSpacing = 0;
    gl_compositeSQL.horizontalSpacing = 0;
    gl_compositeSQL.marginHeight = 0;
    gl_compositeSQL.marginWidth = 0;
    compositeSQL.setLayout(gl_compositeSQL);

    textSQL = new TadpoleEditorWidget(compositeSQL, SWT.BORDER, EditorDefine.EXT_DEFAULT, "", "");
    textSQL.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    sashForm.setWeights(new int[] { 7, 3 });

    tvSQLTemplate.setContentProvider(new SQLTemplateContentprovider());
    tvSQLTemplate.setLabelProvider(new SQLTemplateLabelprovider());

    //      Composite compositeTail = new Composite(parent, SWT.NONE);
    //      compositeTail.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
    //      compositeTail.setLayout(new GridLayout(1, false));

    initData();

    filter = new SQLTemplateFilter();
    tvSQLTemplate.addFilter(filter);

    AnalyticCaller.track(SQLTemplateView.ID);
}

From source file:com.intel.sgx.testers.SGXPropertyTester.java

License:Open Source License

private IProject getProjectOfSelectedItem(Object receiver) {
    StructuredSelection selection = (StructuredSelection) receiver;
    IResource resource = (IResource) selection.getFirstElement();
    IProject project = resource.getProject();
    return project;
}

From source file:com.ivenix.debug.gdbjtag.render.peripheral.PeripheralRendering.java

License:Open Source License

private void handleSelectedAddressChanged(BigInteger bigInteger) {

    // System.out.println("handleSelectedAddressChanged() "
    // + Long.toString(bigInteger.longValue(), 16));

    Object selection = findSelection(bigInteger);
    if (selection != null) {
        StructuredSelection structuredSelection = new StructuredSelection(selection);
        fPeripheralViewer.setSelection((ISelection) structuredSelection);
        Object element = structuredSelection.getFirstElement();
        if (element != null) {
            fPeripheralViewer.reveal(element);
        }//from  www.  ja va  2s  . c o  m
    }
}

From source file:com.jaspersoft.studio.components.customvisualization.creation.wizard.CustomVisualizationComponentListPage.java

License:Open Source License

/**
 * Get the first (and the only one) checked module inside the table
 * /*  ww  w .ja v  a2  s .c  om*/
 * @return the checked module inside the table or null if no module is
 *         checked
 */
public ModuleDefinition getSelectedModule() {
    ISelection selection = viewer.getSelection();
    if (selection != null && selection instanceof StructuredSelection) {
        StructuredSelection ss = (StructuredSelection) selection;
        if (!ss.isEmpty())
            return (ModuleDefinition) ss.getFirstElement();
    }
    return null;
}

From source file:com.jaspersoft.studio.property.dataset.dialog.ParametersTable.java

License:Open Source License

private void createControl(Composite parent) {
    composite = new Composite(parent, SWT.NONE);
    composite.setLayout(new GridLayout(2, false));
    composite.setBackground(background);
    composite.setBackgroundMode(SWT.INHERIT_FORCE);

    wtable = new Table(composite, SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.widthHint = 100;/*  w  ww  . j a  v a  2  s .  c  om*/
    wtable.setLayoutData(gd);
    wtable.setHeaderVisible(true);
    wtable.setLinesVisible(true);

    TableColumn[] col = new TableColumn[4];
    col[0] = new TableColumn(wtable, SWT.NONE);
    col[0].setText(Messages.ParametersTable_name);

    col[1] = new TableColumn(wtable, SWT.NONE);
    col[1].setText(Messages.ParametersTable_isForPrompt);

    col[2] = new TableColumn(wtable, SWT.NONE);
    col[2].setText(Messages.ParametersTable_class);

    col[3] = new TableColumn(wtable, SWT.NONE);
    col[3].setText(Messages.ParametersTable_description);

    for (TableColumn tc : col)
        tc.pack();

    TableLayout tlayout = new TableLayout();
    tlayout.addColumnData(new ColumnWeightData(25, false));
    tlayout.addColumnData(new ColumnWeightData(25, false));
    tlayout.addColumnData(new ColumnWeightData(25, false));
    tlayout.addColumnData(new ColumnWeightData(25, false));
    wtable.setLayout(tlayout);

    tviewer = new TableViewer(wtable);
    tviewer.setContentProvider(new ListContentProvider());
    tviewer.setLabelProvider(new TLabelProvider());
    attachCellEditors(tviewer, wtable);
    UIUtil.setViewerCellEditingOnDblClick(tviewer);

    Composite bGroup = new Composite(composite, SWT.NONE);
    bGroup.setLayout(new GridLayout(1, false));
    bGroup.setLayoutData(new GridData(GridData.FILL_VERTICAL));
    bGroup.setBackground(background);

    new NewButton() {
        @Override
        protected void afterElementAdded(Object selement) {
            try {
                dataset.removeParameter((JRParameter) selement);
                dataset.addParameter((JRDesignParameter) selement);
                fireModifyListeners();
            } catch (JRException e) {
                e.printStackTrace();
            }
        }
    }.createNewButtons(bGroup, tviewer, new INewElement() {

        public Object newElement(List<?> input, int pos) {
            JRDesignParameter f = new JRDesignParameter();
            f.setName(getName());
            f.setValueClass(String.class);
            return f;
        }

        private String getName() {
            List<JRDesignParameter> list = (List<JRDesignParameter>) tviewer.getInput();
            String name = "Parameter"; //$NON-NLS-1$
            boolean match = false;
            String tmp = name;
            for (int i = 1; i < 100000; i++) {
                tmp = name + i;// ModelUtils.getNameFormat(name, i);

                for (JRDesignParameter f : list) {
                    match = f.getName().equals(tmp);
                    if (match)
                        break;
                }
                if (!match)
                    break;
            }
            return tmp;
        }

    });
    final DeleteButton delb = new DeleteButton() {
        @Override
        protected void afterElementDeleted(Object element) {
            JRParameter todel = null;
            for (JRParameter p : dataset.getParametersList())
                if (p.getName().equals(((JRDesignParameter) element).getName())) {
                    todel = p;
                    break;
                }
            if (todel != null) {
                dataset.removeParameter(todel);
                fireModifyListeners();
            }
        }
    };
    delb.createDeleteButton(bGroup, tviewer);

    List<JRParameter> fields = dataset.getParametersList();
    if (fields == null)
        fields = new ArrayList<JRParameter>();
    setFields(fields);

    tviewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            StructuredSelection sel = (StructuredSelection) event.getSelection();
            if (!sel.isEmpty()) {
                JRDesignParameter prm = (JRDesignParameter) sel.getFirstElement();
                delb.setEnabled(!prm.isSystemDefined());
            }
        }
    });

    tviewer.addDragSupport(DND.DROP_COPY | DND.DROP_MOVE,
            new Transfer[] { TemplateTransfer.getInstance(), PluginTransfer.getInstance() },
            new NodeDragListener(tviewer));
}

From source file:com.kdmanalytics.toif.report.internal.contributionItems.TraceContributionItem.java

License:Open Source License

/**
 * generate contribution items for the selection.
 *//*from   w  ww. j a v a  2 s.  c  o  m*/
@Override
protected IContributionItem[] getContributionItems() {
    Object selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getSelection();

    if (!(selection instanceof StructuredSelection)) {
        return EMPTY;
    }

    StructuredSelection ss = (StructuredSelection) selection;

    if (ss.isEmpty()) {
        return EMPTY;
    }

    Object element = ss.getFirstElement();

    if (!(element instanceof IToifReportEntry)) {
        return EMPTY;
    }

    IToifReportEntry entry = (IToifReportEntry) element;

    final IFindingEntry fEntry = entry.getFindingEntry();

    List<Trace> traces = fEntry.getTraces();

    List<CommandContributionItem> list = new ArrayList<CommandContributionItem>();

    //for each of the traces for this finding entry. make contribution items for it.
    for (Trace trace : traces) {
        CommandContributionItemParameter param = new CommandContributionItemParameter(
                PlatformUI.getWorkbench().getActiveWorkbenchWindow(), CONTRIBUTION_ID, COMMAND_ID,
                CommandContributionItem.STYLE_PUSH);

        final String lineNumber = trace.getLineNumber();
        param.label = lineNumber;
        Map<Object, Object> parameters = Maps.newHashMap();
        parameters.put(LINE_NUMBER_KEY, lineNumber);

        param.parameters = parameters;

        list.add(new CommandContributionItem(param));
    }

    return list.toArray(new IContributionItem[] {});
}

From source file:com.kdmanalytics.toif.report.internal.handlers.MergeTSV.java

License:Open Source License

@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
    ISelection s = HandlerUtil.getCurrentSelection(event);

    if (s instanceof StructuredSelection) {
        StructuredSelection structuredSelection = (StructuredSelection) s;

        IProject project = null;// w ww. j a  v  a2  s  . com

        Object firstElement = structuredSelection.getFirstElement();
        if (firstElement instanceof IProject) {
            project = (IProject) firstElement;
        }

        Shell shell = HandlerUtil.getActiveShell(event);
        System.err.println(s);
        // make the dialog
        final File file = displayFileDialog(shell);

        if (file == null) {
            return null;
        }

        Repository repo = getRepositoryFromSelection(structuredSelection);

        if (repo != null) {
            if (project != null) {
                File f = new File(project.getLocation() + "/.toifProject.ser");
                f.delete();
            }
            processTSVFile(shell, file, repo);
            ReportView view = (ReportView) PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
                    .findView(ReportView.VIEW_ID);

            if (view != null) {
                view.updateInput(null);
            }
            ModelUtil.buildModel(s);

        }

    }

    return null;
}

From source file:com.kdmanalytics.toif.report.internal.listeners.ReportDoubleClickListener.java

License:Open Source License

@Override
public void doubleClick(DoubleClickEvent event) {

    StructuredSelection selection = (StructuredSelection) event.getSelection();
    Object element = selection.getFirstElement();

    if (element instanceof IToifReportEntry) {

        IToifReportEntry iToifReportEntry = (IToifReportEntry) element;
        IProject activeProject = iToifReportEntry.getProject().getIProject();

        try {/*w w  w.ja v  a 2s . c  om*/
            IToifReportEntry item = (IToifReportEntry) element;
            FindingEntry entry = item.getFindingEntry();

            LocationGroup locationGroup = (LocationGroup) entry.getParent().getParent();

            IFileGroup file = (IFileGroup) entry.getParent().getParent().getParent();
            IResource member = MemberUtil.findMembers(activeProject, file);

            System.err.println("Member type " + member);
            if (member == null) {
                MessageDialog.openWarning(null, "No Source File Found!",
                        "A source file could not be found for this location.");
                return;
            }

            IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
            HashMap<String, Object> map = new HashMap<String, Object>();

            if (element instanceof IFileGroup) {
                map.put(IMarker.LINE_NUMBER, 1);
            } else {
                map.put(IMarker.LINE_NUMBER, Integer.parseInt(locationGroup.getLineNumber()));
            }

            IMarker marker = member.createMarker(IMarker.TEXT);
            marker.setAttributes(map);
            IDE.openEditor(page, marker);
            marker.delete();
        } catch (Exception e1) {
            e1.printStackTrace();
        }

    }

}

From source file:com.liferay.ide.project.ui.pref.MigrationProblemPreferencePage.java

License:Open Source License

@Override
public Control createContents(Composite parent) {
    Composite pageComponent = new Composite(parent, SWT.NULL);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;/* w w  w .j  a  va 2s . c  o m*/
    layout.marginWidth = 0;
    layout.marginHeight = 0;
    pageComponent.setLayout(layout);
    GridData data = new GridData();
    data.verticalAlignment = GridData.FILL;
    data.horizontalAlignment = GridData.FILL;
    pageComponent.setLayoutData(data);

    data = new GridData(GridData.FILL_HORIZONTAL | GridData.GRAB_HORIZONTAL);

    Label label = new Label(pageComponent, SWT.LEFT);
    label.setText("These are ignored breaking change problems.\n "
            + "You can remove them if you want to show this type of problem next time.");
    data = new GridData();
    data.horizontalAlignment = GridData.FILL;
    data.horizontalSpan = 2;
    label.setLayoutData(data);

    _ignoredProblemTable = new TableViewer(pageComponent, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
    data = new GridData(GridData.FILL_HORIZONTAL);

    createColumns(_ignoredProblemTable);

    final Table table = _ignoredProblemTable.getTable();
    table.setHeaderVisible(true);

    data.heightHint = 200;
    _ignoredProblemTable.getTable().setLayoutData(data);
    _ignoredProblemTable.setContentProvider(ArrayContentProvider.getInstance());

    Composite groupComponent = new Composite(pageComponent, SWT.NULL);
    GridLayout groupLayout = new GridLayout();
    groupLayout.marginWidth = 0;
    groupLayout.marginHeight = 0;
    groupComponent.setLayout(groupLayout);
    data = new GridData();
    data.verticalAlignment = GridData.FILL;
    data.horizontalAlignment = GridData.FILL;
    groupComponent.setLayoutData(data);

    _removeButton = new Button(groupComponent, SWT.PUSH);
    _removeButton.setText("Remove");
    _removeButton.addSelectionListener(new SelectionListener() {

        @Override
        public void widgetSelected(SelectionEvent arg0) {
            StructuredSelection selection = (StructuredSelection) _ignoredProblemTable.getSelection();

            if (selection != null && selection.getFirstElement() instanceof Problem) {
                try {
                    Problem problem = (Problem) selection.getFirstElement();
                    mpContainer.remove(problem);
                    _ignoredProblemTable.setInput(mpContainer.getProblemMap().values().toArray(new Problem[0]));
                } catch (Exception e) {
                    ProjectUI.logError(e);
                }
            }

        }

        @Override
        public void widgetDefaultSelected(SelectionEvent arg0) {
        }
    });

    setButtonLayoutData(_removeButton);

    label = new Label(pageComponent, SWT.LEFT);
    data = new GridData();
    data.horizontalAlignment = GridData.FILL;
    data.horizontalSpan = 2;
    label.setLayoutData(data);

    _detailInfoLabel = new Label(pageComponent, SWT.LEFT);
    _detailInfoLabel.setText("Detail Information");
    data = new GridData();
    data.horizontalAlignment = GridData.FILL;
    data.horizontalSpan = 2;
    _detailInfoLabel.setLayoutData(data);

    _browser = new Browser(pageComponent, SWT.BORDER);
    data = new GridData(GridData.FILL_BOTH);
    _browser.setLayoutData(data);

    groupComponent = new Composite(pageComponent, SWT.NULL);
    groupLayout = new GridLayout();
    groupLayout.marginWidth = 0;
    groupLayout.marginHeight = 0;
    groupComponent.setLayout(groupLayout);
    data = new GridData();
    data.verticalAlignment = GridData.FILL;
    data.horizontalAlignment = GridData.FILL;
    groupComponent.setLayoutData(data);

    fillIgnoredProblemTable();

    _ignoredProblemTable.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(final SelectionChangedEvent event) {
            UIUtil.async(new Runnable() {

                public void run() {
                    updateForm(event);
                }
            }, 50);
        }
    });

    return pageComponent;
}