/** * <copyright> * </copyright> * * */ package org.dresdenocl.language.ocl.resource.ocl.ui; import org.eclipse.jface.preference.PreferencePage; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.program.Program; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Link; import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IWorkbenchPreferencePage; /** * The root preference page. */ public class OclPreferencePage extends PreferencePage implements IWorkbenchPreferencePage { public void init(IWorkbench workbench) { setPreferenceStore(org.dresdenocl.language.ocl.resource.ocl.ui.OclUIPlugin.getDefault().getPreferenceStore()); setDescription(org.dresdenocl.language.ocl.resource.ocl.ui.OclUIResourceBundle.ROOT_PREFERENCE_PAGE_DESCRIPTION); } @Override protected Control createContents(Composite parent) { Composite settingComposite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(); GridData gd; layout.numColumns= 1; layout.marginHeight= 0; layout.marginWidth= 0; gd = new GridData(GridData.BEGINNING); settingComposite.setLayout(layout); settingComposite.setLayoutData(gd); Link link = new Link(settingComposite, SWT.NONE); link.setText(org.dresdenocl.language.ocl.resource.ocl.ui.OclUIResourceBundle.ROOT_PREFERENCE_PAGE_TEXT); link.setSize(140, 40); link.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { if (e.text.startsWith("http")) Program.launch(e.text); } public void widgetDefaultSelected(SelectionEvent e) {} }); return settingComposite; } }