📄 spellcheckerpreferencepage.java
字号:
/******************************************************************************* * Copyright (c) 2003 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.SpellChecker.preferences;import org.eclipse.jface.preference.*;import org.eclipse.swt.widgets.Composite;import org.eclipse.ui.IWorkbench;import org.eclipse.ui.IWorkbenchPreferencePage;import org.eclipse.ui.help.WorkbenchHelp;import com.bdaum.SpellChecker.Messages;import com.swabunga.spell.engine.Configuration;/** * This class implements the common parts of spell checker preference pages. */public abstract class SpellCheckerPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage { /** * Subclass of StringFieldEditor in order to check the user dictionary * suffix for invalid characters */ public class UserSuffixFieldEditor extends StringFieldEditor { public UserSuffixFieldEditor(String name, String labelText, Composite parent) { super(name, labelText, 15, parent); } /** * Checks if entered values are valid * * @return - true if valid */ protected boolean doCheckState() { String txt = getTextControl().getText(); for (int i = 0; i < txt.length(); i++) { if (!Character.isLetterOrDigit(txt.charAt(i))) { setErrorMessage(Messages .getString("SpellCheckerPreferencePage.Invalid_character_in_suffix")); return false; } } return super.doCheckState(); } } public static final String SPELLCHECKERPREFERENCESCONTEXT = "com.bdaum.SpellChecker.preferences_context"; /* Constructor */ public SpellCheckerPreferencePage() { super(GRID); } /** * Initialization */ public void init(IWorkbench workbench) { setDescription(Messages .getString("SpellCheckerPreferencePage.All_changes_will_take_effect")); } /** * Get Plug-in specific workspace PreferenceStore instance * * @return - preference store instance */ public abstract IPreferenceStore doGetPreferenceStore(); /** * Construct page content */ public void createControl(Composite parent) { super.createControl(parent); WorkbenchHelp.setHelp(parent.getParent(), getPreferenceHelpContextID()); } /** * Get Help context id for this preference page * * @return String - the ID for context sensitive help. */ protected String getPreferenceHelpContextID() { return SPELLCHECKERPREFERENCESCONTEXT; } /** * Create field editors */ public void createFieldEditors() { Composite composite = getFieldEditorParent(); addField(new FileFieldEditor( SpellCheckerPreferences.SPELL_DICTIONARY, Messages .getString("SpellCheckerPreferencePage.Spell_Dictionary_File"), composite)); addField(new UserSuffixFieldEditor( SpellCheckerPreferences.USER_DICTIONARY, Messages .getString("SpellCheckerPreferencePage.User_Dictionary_File_Suffix"), composite)); ShortIntegerFieldEditor thresholdEditor = new ShortIntegerFieldEditor( Configuration.SPELL_THRESHOLD, Messages .getString("SpellCheckerPreferencePage.Spell_Threshold"), composite, 4); thresholdEditor.setValidRange(0, 9999); addField(thresholdEditor); addField(new BooleanFieldEditor( Configuration.SPELL_IGNOREDIGITWORDS, Messages.getString("SpellCheckerPreferencePage.Ignore_Numbers"), composite)); addField(new BooleanFieldEditor( SpellCheckerPreferences.IGNOREONELETTERWORDS, Messages .getString("SpellCheckerPreferencePage.Ignore_one_letter_words"), composite)); addField(new BooleanFieldEditor( Configuration.SPELL_IGNOREMIXEDCASE, Messages .getString("SpellCheckerPreferencePage.Ignore_Mixed_Case"), composite)); addField(new BooleanFieldEditor( Configuration.SPELL_IGNORESENTENCECAPITALIZATION, Messages .getString("SpellCheckerPreferencePage.Ignore_Sentence_Capitalization"), composite)); addField(new BooleanFieldEditor( Configuration.SPELL_IGNOREUPPERCASE, Messages .getString("SpellCheckerPreferencePage.Ignore_Upper_Case"), composite)); addField(new StringFieldEditor( SpellCheckerPreferences.COMPOUNDCHARACTERS, Messages .getString("SpellCheckerPreferencePage.CompoundCharacters"), 15, composite)); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -