List of usage examples for org.eclipse.jface.preference PreferenceDialog open
public int open()
From source file:org.eclipse.jubula.client.ui.rcp.widgets.autconfig.AutConfigComponent.java
License:Open Source License
/** * Opens the server preference page/* ww w.j ava2 s . c o m*/ */ protected void openServerPrefPage() { PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(getShell(), Constants.JB_PREF_PAGE_AUTAGENT, null, null); DialogUtils.setWidgetNameForModalDialog(dialog); dialog.open(); m_listOfServers = AutAgentManager.getInstance(); String oldServer = m_serverCombo.getText(); fillServerCombo(); m_serverCombo.setText(oldServer); }
From source file:org.eclipse.linuxtools.binutils.link2source.STCSourceNotFoundEditor.java
License:Open Source License
@Override protected void editSourceLookupPath() { PreferenceDialog d = org.eclipse.ui.dialogs.PreferencesUtil.createPreferenceDialogOn(null, "org.eclipse.cdt.debug.ui.SourcePreferencePage", null, null); if (d.open() == PreferenceDialog.OK) { closeEditor();// w ww. j a v a 2 s . co m openSourceFileAtLocation(getProject(), getMissingFile(), getLineNumber()); } }
From source file:org.eclipse.linuxtools.internal.rpm.createrepo.preference.CreaterepoGeneralPropertyPage.java
License:Open Source License
@Override protected Composite addContents(Composite parent) { Composite composite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(2, false); GridData layoutData = new GridData(); composite.setLayout(layout);/*from w ww . ja v a 2s.co m*/ // TODO: use BooleanFieldEditor and get it to layout properly // with the link (lnWorkspaceSettings) btnProjectSettings = new Button(composite, SWT.CHECK); btnProjectSettings.addListener(SWT.Selection, event -> toggleEnabled()); layoutData = new GridData(); layoutData.horizontalAlignment = GridData.BEGINNING; layoutData.horizontalAlignment = GridData.FILL; layoutData.grabExcessHorizontalSpace = true; btnProjectSettings.setText(Messages.CreaterepoGeneralPropertyPage_projectSettings); btnProjectSettings.setLayoutData(layoutData); btnProjectSettings.setSelection(Activator.getDefault().getPreferenceStore() .getBoolean(CreaterepoPreferenceConstants.PREF_GENERAL_ENABLED)); btnProjectSettings.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { checkState(); } }); lnWorkspaceSettings = new Link(composite, SWT.NONE); layoutData = new GridData(); layoutData.horizontalAlignment = SWT.END; lnWorkspaceSettings.setLayoutData(layoutData); lnWorkspaceSettings.setText(NLS.bind(linkTags, Messages.CreaterepoGeneralPropertyPage_workspaceSettings)); lnWorkspaceSettings.setFont(parent.getFont()); lnWorkspaceSettings.addListener(SWT.Selection, event -> { PreferenceDialog preferenceDialog = PreferencesUtil.createPreferenceDialogOn(getShell(), CREATEREPO_PREFERENCE_ID, new String[] { CREATEREPO_PREFERENCE_ID }, null); preferenceDialog.open(); }); // general group generalGroup = new Group(composite, SWT.SHADOW_ETCHED_IN); layout = new GridLayout(2, false); generalGroup.setLayout(layout); generalGroup.setText(Messages.CreaterepoPreferencePage_generalGroupLabel); GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1) .applyTo(generalGroup); // generate unique metadata filenames bfeIncludeChecksum = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME, Messages.CreaterepoPreferencePage_booleanChecksumName, generalGroup); bfeIncludeChecksum.fillIntoGrid(generalGroup, 2); bfeIncludeChecksum.setPreferenceStore(preferenceStore); bfeIncludeChecksum.setPropertyChangeListener(this); bfeIncludeChecksum.load(); // generate sqlite databases bfeSQLDB = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_GENERATE_DB, Messages.CreaterepoPreferencePage_booleanGenerateSQLDB, generalGroup); bfeSQLDB.fillIntoGrid(generalGroup, 2); bfeSQLDB.setPreferenceStore(preferenceStore); bfeSQLDB.setPropertyChangeListener(this); bfeSQLDB.load(); // ignore symlinks for packages bfeIgnoreSymlinks = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS, Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks, generalGroup); bfeIgnoreSymlinks.fillIntoGrid(generalGroup, 2); bfeIgnoreSymlinks.setPreferenceStore(preferenceStore); bfeIgnoreSymlinks.setPropertyChangeListener(this); bfeIgnoreSymlinks.load(); // output files in pretty xml format bfePrettyXML = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_PRETTY_XML, Messages.CreaterepoPreferencePage_booleanPrettyXML, generalGroup); bfePrettyXML.fillIntoGrid(generalGroup, 2); bfePrettyXML.setPreferenceStore(preferenceStore); bfePrettyXML.setPropertyChangeListener(this); bfePrettyXML.load(); // number of workers ifeSpawns = new IntegerFieldEditor(CreaterepoPreferenceConstants.PREF_WORKERS, Messages.CreaterepoPreferencePage_numWorkers, generalGroup); ifeSpawns.fillIntoGrid(generalGroup, 2); // more than 128 is alot. limiting. (createrepo warning) ifeSpawns.setValidRange(0, 128); ifeSpawns.setPreferenceStore(preferenceStore); ifeSpawns.setPropertyChangeListener(this); ifeSpawns.load(); updateGroupSpacing(generalGroup); // updates group updatesGroup = new Group(composite, SWT.SHADOW_ETCHED_IN); updatesGroup.setText(Messages.CreaterepoPreferencePage_updateGroupLabel); GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1) .hint(10, SWT.DEFAULT).applyTo(updatesGroup); // don't generate repo metadata, if their timestamps are newer than its rpms bfeSameFilename = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_CHECK_TS, Messages.CreaterepoPreferencePage_booleanCheckTS, updatesGroup); bfeSameFilename.fillIntoGrid(updatesGroup, 2); bfeSameFilename.setPreferenceStore(preferenceStore); bfeSameFilename.setPropertyChangeListener(this); bfeSameFilename.load(); // note of caution lblCheckTs = new Label(updatesGroup, SWT.WRAP); lblCheckTs.setText(Messages.CreaterepoPreferencePage_checkTSNote); layoutData = new GridData(); layoutData.widthHint = 130; layoutData.horizontalAlignment = SWT.FILL; layoutData.grabExcessHorizontalSpace = true; layoutData.horizontalIndent = 5; lblCheckTs.setLayoutData(layoutData); updateGroupSpacing(updatesGroup); // changelog group changelogGroup = new Group(composite, SWT.SHADOW_ETCHED_IN); changelogGroup.setText(Messages.CreaterepoPreferencePage_changelogGroupLabel); GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1) .hint(10, SWT.DEFAULT).applyTo(changelogGroup); // don't generate repo metadata, if their timestamps are newer than its rpms ifeChangelogLimit = new IntegerFieldEditor(CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT, Messages.CreaterepoPreferencePage_numChangelogLimit, changelogGroup); ifeChangelogLimit.fillIntoGrid(changelogGroup, 2); ifeChangelogLimit.setValidRange(0, Integer.MAX_VALUE); ifeChangelogLimit.setPreferenceStore(preferenceStore); ifeChangelogLimit.setPropertyChangeListener(this); ifeChangelogLimit.load(); updateGroupSpacing(changelogGroup); checksumsContainer = new Composite(composite, SWT.NONE); checksumsContainer.setLayout(new GridLayout()); GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).indent(0, 20).grab(true, false) .applyTo(checksumsContainer); // available checksums rgfeChecksums = new RadioGroupFieldEditor(CreaterepoPreferenceConstants.PREF_CHECKSUM, Messages.CreaterepoPreferencePage_checksumGroupLabel, 1, new String[][] { { ICreaterepoChecksums.SHA1, ICreaterepoChecksums.SHA1 }, { ICreaterepoChecksums.MD5, ICreaterepoChecksums.MD5 }, { ICreaterepoChecksums.SHA256, ICreaterepoChecksums.SHA256 }, { ICreaterepoChecksums.SHA512, ICreaterepoChecksums.SHA512 } }, checksumsContainer, true); rgfeChecksums.setPreferenceStore(preferenceStore); rgfeChecksums.setPropertyChangeListener(this); rgfeChecksums.load(); compressContainer = new Composite(composite, SWT.NONE); compressContainer.setLayout(new GridLayout()); GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).indent(0, 20).grab(true, false) .applyTo(compressContainer); // available compression types rgfeCompressionTypes = new RadioGroupFieldEditor(CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE, Messages.CreaterepoPreferencePage_compressionGroupLabel, 1, new String[][] { { ICreaterepoCompressionTypes.COMPAT, ICreaterepoCompressionTypes.COMPAT }, { ICreaterepoCompressionTypes.XZ, ICreaterepoCompressionTypes.XZ }, { ICreaterepoCompressionTypes.GZ, ICreaterepoCompressionTypes.GZ }, { ICreaterepoCompressionTypes.BZ2, ICreaterepoCompressionTypes.BZ2 } }, compressContainer, true); rgfeCompressionTypes.setPreferenceStore(preferenceStore); rgfeCompressionTypes.setPropertyChangeListener(this); rgfeCompressionTypes.load(); toggleEnabled(); return composite; }
From source file:org.eclipse.m2e.ui.internal.launch.MavenRuntimeSelector.java
License:Open Source License
public MavenRuntimeSelector(final Composite mainComposite) { super(mainComposite, SWT.NONE); GridLayout gridLayout = new GridLayout(2, false); gridLayout.marginWidth = 0;/*ww w . jav a2s. co m*/ gridLayout.marginHeight = 0; setLayout(gridLayout); runtimeComboViewer = new ComboViewer(this, SWT.BORDER | SWT.READ_ONLY); runtimeComboViewer.getCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); runtimeComboViewer.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object input) { return ((List<?>) input).toArray(); } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } public void dispose() { } }); runtimeComboViewer.setLabelProvider(new ILabelProvider() { public void removeListener(ILabelProviderListener listener) { } public boolean isLabelProperty(Object element, String property) { return false; } public void dispose() { } public void addListener(ILabelProviderListener listener) { } public String getText(Object element) { AbstractMavenRuntime runtime = (AbstractMavenRuntime) element; StringBuilder sb = new StringBuilder(); if (runtime.isLegacy()) { sb.append(MavenRuntimeManagerImpl.EXTERNAL).append(" ").append(runtime.toString()); } else if (!runtime.isEditable()) { sb.append(getType(runtime)).append(" (").append(runtime.toString()).append(')'); } else { sb.append(runtime.getName()).append(" ("); sb.append(getType(runtime)).append(' ').append(runtime.toString()); sb.append(')'); } return sb.toString(); } public Image getImage(Object element) { return null; } }); try { setInput(); } catch (NullPointerException e) { // ignore, this only happens inside windowbuilder } configureRuntimesButton = new Button(this, SWT.NONE); configureRuntimesButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false)); configureRuntimesButton.setText(org.eclipse.m2e.internal.launch.Messages.MavenLaunchMainTab_btnConfigure); configureRuntimesButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(mainComposite.getShell(), "org.eclipse.m2e.core.preferences.MavenInstallationsPreferencePage", null, null); //$NON-NLS-1$ if (dialog.open() == Window.OK) { setInput(); } } }); }
From source file:org.eclipse.mat.ui.rcp.actions.OpenPreferenceAction.java
License:Open Source License
@Override public void run() { if (reg == null) reg = new PreferenceRegistry(); PreferenceManager manager = new PreferenceManager('/'); // Recreate tree structure Map<String, Node> nodes = new LinkedHashMap<String, Node>(); for (Node node : reg.delegates()) { node.subNode = false;//ww w .j a v a 2 s .com for (IPreferenceNode subNode : node.getSubNodes()) node.remove(subNode.getId()); nodes.put(node.getId(), node); } for (Node node : reg.delegates()) { if (node.getCategory() != null && nodes.containsKey(node.getCategory())) { nodes.get(node.getCategory()).add(node); node.subNode = true; } } List<Node> toSort = new ArrayList<Node>(); for (Node node : nodes.values()) { if (!node.subNode) toSort.add(node); } Collections.sort(toSort, new Comparator<Node>() { public int compare(Node object1, Node object2) { return object1.getLabelText().compareTo(object2.getLabelText()); } }); for (Node node : toSort) { manager.addToRoot(node); } PreferenceDialog dialog = new PreferenceDialog( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), manager); dialog.open(); }
From source file:org.eclipse.mylyn.commons.notifications.ui.NotificationControl.java
License:Open Source License
@Override protected void createLinkControls(Composite buttonsComp) { if (getPreferencesPageId() != null) { configureLink = new ImageHyperlink(buttonsComp, SWT.NONE); configureLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CONFIGURE)); configureLink.addHyperlinkListener(new HyperlinkAdapter() { @Override// www .j a v a 2s . c o m public void linkActivated(HyperlinkEvent e) { PreferenceDialog pd = PreferencesUtil.createPreferenceDialogOn(getShell(), getPreferencesPageId(), new String[0], getEventId()); // Only close the message if the did not cancel the operation if (pd != null) { pd.open(); } } @Override public void linkEntered(HyperlinkEvent e) { configureLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CONFIGURE_HOVER)); } @Override public void linkExited(HyperlinkEvent e) { configureLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CONFIGURE)); } }); // Initially invisible, must have eventId for this to be of any use. configureLink.setVisible(getEventId() != null); } super.createLinkControls(buttonsComp); }
From source file:org.eclipse.mylyn.commons.repositories.ui.RepositoryLocationPart.java
License:Open Source License
private void createProxySection(final SectionComposite parent) { int style = SWT.NONE; if (!Boolean.parseBoolean(getWorkingCopy().getProperty(RepositoryLocation.PROPERTY_PROXY_USEDEFAULT))) { style |= ExpandableComposite.EXPANDED; }/*from www. jav a2s . co m*/ ExpandableComposite section = parent .createSection(Messages.RepositoryLocationPart_Proxy_Server_Configuration, style); Composite composite = new Composite(section, SWT.NONE); section.setClient(composite); GridLayoutFactory.fillDefaults().numColumns(3).applyTo(composite); Label label; final Button systemProxyButton = new Button(composite, SWT.CHECK); GridDataFactory.fillDefaults().span(2, SWT.DEFAULT).applyTo(systemProxyButton); systemProxyButton.setText(Messages.RepositoryLocationPart_Use_global_Network_Connections_preferences); bind(systemProxyButton, RepositoryLocation.PROPERTY_PROXY_USEDEFAULT); Link changeProxySettingsLink = new Link(composite, SWT.NONE); changeProxySettingsLink.setText(Messages.RepositoryLocationPart_Change_Settings); changeProxySettingsLink.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { PreferenceDialog dlg = PreferencesUtil.createPreferenceDialogOn(parent.getShell(), PREFS_PAGE_ID_NET_PROXY, new String[] { PREFS_PAGE_ID_NET_PROXY }, null); dlg.open(); } }); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_Proxy_Host); final Text proxyHostText = new Text(composite, SWT.BORDER); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(proxyHostText); bind(proxyHostText, RepositoryLocation.PROPERTY_PROXY_HOST); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_Proxy_Port); final Text proxyPortText = new Text(composite, SWT.BORDER); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(proxyPortText); bind(proxyPortText, RepositoryLocation.PROPERTY_PROXY_PORT); // authentication Button enableButton = new Button(composite, SWT.CHECK); GridDataFactory.fillDefaults().grab(true, false).span(3, 1).applyTo(enableButton); enableButton.setText(Messages.RepositoryLocationPart_Enable_Proxy_Authentication); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_User); Text userText = new Text(composite, SWT.BORDER); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(userText); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_Password); Text passwordText = new Text(composite, SWT.BORDER | SWT.PASSWORD); GridDataFactory.fillDefaults().grab(true, false).applyTo(passwordText); Button savePasswordButton = new Button(composite, SWT.CHECK); savePasswordButton.setText(Messages.RepositoryLocationPart_Save_Password); final UserCredentialsListener listener = bindUserCredentials(AuthenticationType.PROXY, enableButton, userText, passwordText, null, savePasswordButton, false); systemProxyButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { updateProxyEnablement(listener, proxyPortText, proxyHostText, !systemProxyButton.getSelection()); } }); updateProxyEnablement(listener, proxyPortText, proxyHostText, !systemProxyButton.getSelection()); }
From source file:org.eclipse.mylyn.commons.ui.team.RepositoryLocationPart.java
License:Open Source License
private void createProxySection(final SectionComposite parent) { ExpandableComposite section = parent .createSection(Messages.RepositoryLocationPart_Proxy_Server_Configuration); Composite composite = new Composite(section, SWT.NONE); section.setClient(composite);//from www . java 2s . c o m GridLayoutFactory.fillDefaults().numColumns(3).applyTo(composite); Label label; Button systemProxyButton = new Button(composite, SWT.CHECK); GridDataFactory.fillDefaults().span(2, SWT.DEFAULT).applyTo(systemProxyButton); systemProxyButton.setText(Messages.RepositoryLocationPart_Use_global_Network_Connections_preferences); // systemProxyButton.addSelectionListener(new SelectionAdapter() { // @Override // public void widgetSelected(SelectionEvent e) { // updateProxyEnablement(systemProxyButton.getSelection()); // } // }); bind(systemProxyButton, RepositoryLocation.PROPERTY_PROXY_USEDEFAULT); Link changeProxySettingsLink = new Link(composite, SWT.NONE); changeProxySettingsLink.setText(Messages.RepositoryLocationPart_Change_Settings); changeProxySettingsLink.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { PreferenceDialog dlg = PreferencesUtil.createPreferenceDialogOn(parent.getShell(), PREFS_PAGE_ID_NET_PROXY, new String[] { PREFS_PAGE_ID_NET_PROXY }, null); dlg.open(); } }); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_Proxy_Host); Text proxyHostText = new Text(composite, SWT.BORDER); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(proxyHostText); bind(proxyHostText, RepositoryLocation.PROPERTY_PROXY_HOST); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_Proxy_Port); Text proxyPortText = new Text(composite, SWT.BORDER | SWT.PASSWORD); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(proxyPortText); bind(proxyPortText, RepositoryLocation.PROPERTY_PROXY_PORT); // authentication Button enableButton = new Button(composite, SWT.CHECK); GridDataFactory.fillDefaults().grab(true, false).span(3, 1).applyTo(enableButton); enableButton.setText(Messages.RepositoryLocationPart_Enable_Proxy_Authentication); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_User); Text userText = new Text(composite, SWT.BORDER); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(userText); label = new Label(composite, SWT.NONE); label.setText(Messages.RepositoryLocationPart_Password); Text passwordText = new Text(composite, SWT.BORDER | SWT.PASSWORD); GridDataFactory.fillDefaults().grab(true, false).applyTo(passwordText); Button savePasswordButton = new Button(composite, SWT.CHECK); savePasswordButton.setText(Messages.RepositoryLocationPart_Save_Password); bind(AuthenticationType.PROXY, enableButton, userText, passwordText, savePasswordButton, false); }
From source file:org.eclipse.mylyn.internal.builds.ui.view.OpenBuildsPreferencesAction.java
License:Open Source License
@Override public void run() { PreferenceDialog dlg = PreferencesUtil.createPreferenceDialogOn(WorkbenchUtil.getShell(), BuildsUiInternal.ID_PREFERENCE_PAGE_BUILDS, new String[] { BuildsUiInternal.ID_PREFERENCE_PAGE_BUILDS }, null); dlg.open(); }
From source file:org.eclipse.mylyn.internal.provisional.commons.ui.ServiceMessageControl.java
License:Open Source License
/** * Creates the GUI of the service message control. * //from w ww .java2 s. com * @param parent * the parent composite * @return the control */ public Control createControl(Composite parent) { FormColors colors = getFormColors(parent.getDisplay()); head = new GradientCanvas(parent, SWT.NONE); GridLayout headLayout = new GridLayout(); headLayout.marginHeight = 0; headLayout.marginWidth = 0; headLayout.horizontalSpacing = 0; headLayout.verticalSpacing = 0; headLayout.numColumns = 1; head.setLayout(headLayout); headData = new GridData(SWT.FILL, SWT.TOP, true, false); head.setLayoutData(headData); Color top = colors.getColor(IFormColors.H_GRADIENT_END); Color bot = colors.getColor(IFormColors.H_GRADIENT_START); head.setBackgroundGradient(new Color[] { bot, top }, new int[] { 100 }, true); head.setSeparatorVisible(true); head.setSeparatorAlignment(SWT.TOP); head.putColor(IFormColors.H_BOTTOM_KEYLINE1, colors.getColor(IFormColors.H_BOTTOM_KEYLINE1)); head.putColor(IFormColors.H_BOTTOM_KEYLINE2, colors.getColor(IFormColors.H_BOTTOM_KEYLINE2)); head.putColor(IFormColors.H_HOVER_LIGHT, colors.getColor(IFormColors.H_HOVER_LIGHT)); head.putColor(IFormColors.H_HOVER_FULL, colors.getColor(IFormColors.H_HOVER_FULL)); head.putColor(IFormColors.TB_TOGGLE, colors.getColor(IFormColors.TB_TOGGLE)); head.putColor(IFormColors.TB_TOGGLE_HOVER, colors.getColor(IFormColors.TB_TOGGLE_HOVER)); TableWrapLayout layout = new TableWrapLayout(); layout.numColumns = 3; head.setLayout(layout); imageLabel = new Label(head, SWT.NONE); titleLabel = new Label(head, SWT.NONE); setHeaderFontSizeAndStyle(titleLabel); Composite buttonsComp = new Composite(head, SWT.NONE); TableWrapData data = new TableWrapData(); data.align = TableWrapData.RIGHT; buttonsComp.setLayoutData(data); GridLayout gLayout = new GridLayout(2, false); gLayout.horizontalSpacing = 0; gLayout.verticalSpacing = 0; gLayout.marginHeight = 0; gLayout.marginWidth = 0; gLayout.verticalSpacing = 0; buttonsComp.setLayout(gLayout); if (getPreferencesPageId() != null) { configureLink = new ImageHyperlink(buttonsComp, SWT.NONE); configureLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CONFIGURE)); configureLink.addHyperlinkListener(new HyperlinkAdapter() { @Override public void linkEntered(HyperlinkEvent e) { configureLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CONFIGURE_HOVER)); } @Override public void linkExited(HyperlinkEvent e) { configureLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CONFIGURE)); } @Override public void linkActivated(HyperlinkEvent e) { PreferenceDialog pd = PreferencesUtil.createPreferenceDialogOn(getShell(), getPreferencesPageId(), new String[0], eventId); // Only close the message if the did not cancel the operation if (pd != null) { pd.open(); } } }); // Initially invisible, must have eventId for this to be of any use. configureLink.setVisible(eventId != null); } closeLink = new ImageHyperlink(buttonsComp, SWT.NONE); closeLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CLOSE)); // data = new TableWrapData(); // data.align = TableWrapData.RIGHT; // closeLink.setLayoutData(data); closeLink.addHyperlinkListener(new HyperlinkAdapter() { @Override public void linkActivated(HyperlinkEvent e) { closeMessage(); } @Override public void linkEntered(HyperlinkEvent e) { closeLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CLOSE_HOVER)); } @Override public void linkExited(HyperlinkEvent e) { closeLink.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CLOSE)); } }); // spacer new Label(head, SWT.NONE).setText(" "); //$NON-NLS-1$ descriptionLabel = new Link(head, SWT.WRAP); descriptionLabel.addSelectionListener(getLinkListener()); data = new TableWrapData(); data.colspan = 2; data.grabHorizontal = true; descriptionLabel.setLayoutData(data); return head; }