blob: 62c58886b346e86a34ecaadf4768327a2b4c355b [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2008-2010 Sonatype, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Sonatype, Inc. - initial API and implementation
*******************************************************************************/
package org.eclipse.m2e.jdt.ui.internal;
import org.eclipse.jdt.core.IClasspathEntry;
import org.eclipse.jdt.core.IJavaProject;
import org.eclipse.jdt.ui.wizards.IClasspathContainerPage;
import org.eclipse.jdt.ui.wizards.IClasspathContainerPageExtension;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Link;
import org.eclipse.ui.dialogs.PreferencesUtil;
import org.eclipse.m2e.core.internal.IMavenConstants;
import org.eclipse.m2e.jdt.ui.internal.Messages;
/**
* MavenClasspathContainerPage
*
* @author Eugene Kuleshov
*/
public class MavenClasspathContainerPage extends WizardPage implements IClasspathContainerPage,
IClasspathContainerPageExtension {
IJavaProject javaProject;
private IClasspathEntry containerEntry;
public MavenClasspathContainerPage() {
super(Messages.MavenClasspathContainerPage_title);
}
// IClasspathContainerPageExtension
public void initialize(IJavaProject javaProject, IClasspathEntry[] currentEntries) {
this.javaProject = javaProject;
// this.currentEntries = currentEntries;
}
// IClasspathContainerPage
public IClasspathEntry getSelection() {
return this.containerEntry;
}
public void setSelection(IClasspathEntry containerEntry) {
this.containerEntry = containerEntry;
}
public void createControl(Composite parent) {
setTitle(Messages.MavenClasspathContainerPage_control_title);
setDescription(Messages.MavenClasspathContainerPage_control_desc);
Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new GridLayout());
setControl(composite);
Link link = new Link(composite, SWT.NONE);
link.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
link.setText(Messages.MavenClasspathContainerPage_link);
link.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
// IWorkbenchPreferenceContainer container= (IWorkbenchPreferenceContainer) getContainer();
// container.openPage(MavenProjectPreferencePage.ID, javaProject.getProject());
PreferencesUtil.createPropertyDialogOn(getShell(), javaProject.getProject(), //
IMavenConstants.PREFERENCE_PAGE_ID, new String[] {IMavenConstants.PREFERENCE_PAGE_ID}, null).open();
}
});
}
public boolean finish() {
return true;
}
}