/*******************************************************************************
* Copyright (c) 2016 Red Hat, Inc.
* Distributed under license by Red Hat, Inc. All rights reserved.
* This program is made available under the terms of the
* Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
******************************************************************************/
package org.jboss.tools.windup.ui.internal.intro;
import java.io.IOException;
import java.net.URL;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.swt.SWT;
import org.eclipse.swt.browser.Browser;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.IPersistableElement;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.part.EditorPart;
import org.jboss.tools.windup.model.domain.WindupConstants;
import org.jboss.tools.windup.ui.WindupUIPlugin;
import org.jboss.tools.windup.ui.internal.Messages;
/**
* The Windup getting started view.
*/
public class GettingStartedEditor extends EditorPart {
public static final String VIEW_ID = "org.jboss.tools.windup.ui.gettingStarted";
@Override
public void createPartControl(Composite parent) {
Browser browser = new Browser(parent, SWT.NONE);
try {
URL url = FileLocator.find(
WindupUIPlugin.getDefault().getBundle(),
new Path("html/windup.html"), null);
url = FileLocator.toFileURL(url);
browser.setUrl(url.getPath());
} catch (IOException e) {
WindupUIPlugin.log(e);
}
}
@Override
public void dispose() {
super.dispose();
IPreferenceStore prefs = WindupUIPlugin.getDefault().getPreferenceStore();
prefs.setValue(WindupConstants.SHOW_GETTING_STARTED, false);
}
@Override
public void setFocus() {
}
@Override
public void doSave(IProgressMonitor monitor) {
}
@Override
public void doSaveAs() {
}
@Override
public void init(IEditorSite site, IEditorInput input) throws PartInitException {
super.setSite(site);
super.setInput(input);
}
@Override
public boolean isDirty() {
return false;
}
@Override
public boolean isSaveAsAllowed() {
return false;
}
public static class EditorInput implements IEditorInput {
public static final EditorInput INSTANCE = new EditorInput();
@Override
public <T> T getAdapter(Class<T> adapter) {
return null;
}
@Override
public boolean exists() {
return true;
}
@Override
public ImageDescriptor getImageDescriptor() {
return null;
}
@Override
public String getName() {
return Messages.windupGettingStartedName;
}
@Override
public IPersistableElement getPersistable() {
return null;
}
@Override
public String getToolTipText() {
return Messages.windupGettingStartedName;
}
}
}