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

📄 j2mepreferencepage.java

📁 eclipseme的最新版本的source,欢迎j2me程序员使用
💻 JAVA
字号:
/**
 * Copyright (c) 2003-2005 Craig Setera
 * All Rights Reserved.
 * Licensed under the Eclipse Public License - v 1.0
 * For more information see http://www.eclipse.org/legal/epl-v10.html
 */
package eclipseme.ui.internal.preferences;

import org.eclipse.jface.preference.DirectoryFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.jface.preference.FileFieldEditor;
import org.eclipse.jface.preference.IntegerFieldEditor;
import org.eclipse.jface.preference.StringFieldEditor;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.PlatformUI;

import eclipseme.core.IEclipseMECoreConstants;
import eclipseme.ui.EclipseMEUIStrings;
import eclipseme.ui.internal.EclipseMEUIPlugin;

/**
 * Preference page implementation for setting J2ME preferences.
 * <p />
 * Copyright (c) 2003-2005 Craig Setera<br>
 * All Rights Reserved.<br>
 * Licensed under the Eclipse Public License - v 1.0<p/>
 * <br>
 * $Revision: 1.18 $
 * <br>
 * $Date: 2006/02/16 23:55:43 $
 * <br>
 * @author Craig Setera
 */
public class J2MEPreferencePage
	extends FieldEditorPreferencePage
	implements IWorkbenchPreferencePage, IEclipseMECoreConstants
{
	public static final String ID = "eclipseme.ui.preferences.J2MEPreferencePage";
	
	/**
	 * Default constructor.
	 */
	public J2MEPreferencePage() {
		super(GRID);
		setPreferenceStore(EclipseMEUIPlugin.getDefault().getCorePreferenceStore());
		setDescription(EclipseMEUIStrings.getString("pref.description"));
	}

	/*
	 *	Overridden so that we get the help context where it belongs so that
	 *	it works when the focus is in the left pane. 
	 */
	protected Control createContents(Composite parent)
	{
		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, "eclipseme.ui.help_J2MEPreferencePage");
		
		return(super.createContents(parent));
	}

	/**
	 * Creates the field editors.
	 */
	public void createFieldEditors() {
		int columnSpan = 3;
		Composite parent = getFieldEditorParent();
		
		addField(new StringFieldEditor(
			PREF_DEPLOYMENT_DIR,
			"Deployment Directory:",
			parent));
//		addField(new StringFieldEditor(
//			PREF_VERIFIED_DIR,
//			EclipseMEUIStrings.getString("pref.verified_dir"),
//			parent));
		
		addSpacer(parent, columnSpan);
		
		Group antennaGroup = new Group(parent, SWT.NONE);
		antennaGroup.setText("Antenna Settings");
		antennaGroup.setLayout(new GridLayout(1, true));
		GridData antennaGD = getColumnSpanGridData(columnSpan);
		antennaGD.minimumWidth = 500;
		antennaGroup.setLayoutData(antennaGD);

		Composite antennaComposite = new Composite(antennaGroup, SWT.NONE);
		antennaComposite.setLayout(new GridLayout(3, true));
		antennaComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
		
		FileFieldEditor antennaJarEditor = 
			new FileFieldEditor(PREF_ANTENNA_JAR, "Antenna JAR:", true, antennaComposite);
		antennaJarEditor.setFileExtensions(new String[] { "*.jar" });
		addField(antennaJarEditor);

		DirectoryFieldEditor wtkRootEditor = 
			new DirectoryFieldEditor(PREF_WTK_ROOT, "WTK Root:", antennaComposite);
		addField(wtkRootEditor);

		addSpacer(parent, columnSpan);
		
		addField(new IntegerFieldEditor(
			PREF_RMTDBG_DELAY,
			"Debug Server Delay (ms):",
			parent));
		
		Label l = new Label(parent, SWT.NONE);
		l.setText("NOTE: Necessary for Nokia and potentially other emulators.");
		l.setLayoutData(getColumnSpanGridData(columnSpan));
	}

	/**
	 * Initialize the preference page as necessary
	 * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
	 */
	public void init(IWorkbench workbench) {
	}

	/**
	 * Add some horizontal space to the dialog.
	 * 
	 * @param parent
	 * @param columnSpan
	 */
	private void addSpacer(Composite parent, int columnSpan) {
		Label l = new Label(parent, SWT.NONE);
		l.setLayoutData(getColumnSpanGridData(columnSpan));
	}

	/**
	 * Return a new GridData object with the specified column span.
	 * 
	 * @param columnSpan
	 * @return
	 */
	private GridData getColumnSpanGridData(int columnSpan) {
		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
		gd.horizontalSpan = columnSpan;
		
		return gd;
	}
}

⌨️ 快捷键说明

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