/******************************************************************************* * 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; } } }