⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hexintro.java

📁 Wrox.Professional.Eclipse.3.for.Java.Developers
💻 JAVA
字号:
/*******************************************************************************
 * Copyright (c) 2004 Berthold Daum. All rights reserved. This program and the
 * accompanying materials are made available under the terms of the Common
 * Public License v1.0 which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/cpl-v10.html
 * 
 * Contributors: Berthold Daum
 ******************************************************************************/
package com.bdaum.Hex;

import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.forms.HyperlinkSettings;
import org.eclipse.ui.forms.events.HyperlinkAdapter;
import org.eclipse.ui.forms.events.HyperlinkEvent;
import org.eclipse.ui.forms.widgets.Form;
import org.eclipse.ui.forms.widgets.FormText;
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.TableWrapLayout;
import org.eclipse.ui.intro.IIntroManager;
import org.eclipse.ui.part.IntroPart;

public class HexIntro extends IntroPart {

	// The Form-Widget
	Form introForm;

	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.ui.part.IntroPart#setFocus()
	 */
	public void setFocus() {
		introForm.setFocus();
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.ui.part.IntroPart
	 *      #createPartControl(org.eclipse.swt.widgets.Composite)
	 */
	public void createPartControl(Composite parent) {
		// Fetch Toolkit
		FormToolkit tk = new FormToolkit(parent.getDisplay());
		// Create Form and set Layout
		introForm = tk.createForm(parent);
		TableWrapLayout layout = new TableWrapLayout();
		introForm.getBody().setLayout(layout);
		// Create forms text, more space between paragraphs
		FormText tx = tk.createFormText(introForm.getBody(), true);
		tx.setParagraphsSeparated(true);
		// Set hyperlink appearance
		// (must be done before setting the text)
		HyperlinkSettings settings = new HyperlinkSettings(parent.getDisplay());
		settings.setHyperlinkUnderlineMode(HyperlinkSettings.UNDERLINE_HOVER);
		tx.setHyperlinkSettings(settings);
		// Marked-up text
		String text = "<form><p><span font=\"title\">Hex 7</span></p>"
				+ "<p><span color=\"subtitle\" font=\"subtitle\">"
				+ "The game of Hex</span></p>"
				+ "<p><a href=\"http://startGame\">Start game</a></p></form>";
		tx.setText(text, true, false);
		// Set Fonts
		Font titleFont = JFaceResources.getFont(JFaceResources.HEADER_FONT);
		tx.setFont("title", titleFont);
		Font subtitleFont = JFaceResources.getFont(JFaceResources.BANNER_FONT);
		tx.setFont("subtitle", subtitleFont);
		// Set color for subtitle
		Color col = parent.getDisplay().getSystemColor(SWT.COLOR_DARK_GREEN);
		tx.setColor("subtitle", col);
		// Process hyperlink events
		tx.addHyperlinkListener(new HyperlinkAdapter() {
			public void linkActivated(HyperlinkEvent e) {
				// Fetch IntroManager, close welcome screen
				IWorkbenchWindow window = getIntroSite().getWorkbenchWindow();
				IWorkbench workbench = window.getWorkbench();
				IIntroManager manager = workbench.getIntroManager();
				manager.closeIntro(HexIntro.this);
			}
		});
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.ui.intro.IIntroPart#standbyStateChanged(boolean)
	 */
	public void standbyStateChanged(boolean standby) {
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -